ngx-st-sap-bp 17.0.13 → 17.0.14

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.
@@ -104,11 +104,11 @@ export class SapBpListComponent {
104
104
  });
105
105
  }
106
106
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SapBpListComponent, deps: [{ token: i1.SapBpService }, { token: i2.MatDialog }, { token: i3.StSnackBarService }, { token: i4.TranslateService }, { token: i5.StDialogTranslatedService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SapBpListComponent, selector: "ngx-st-sap-bp-list", inputs: { onlyView: { classPropertyName: "onlyView", publicName: "onlyView", isSignal: true, isRequired: false, transformFunction: null }, userSettings: { classPropertyName: "userSettings", publicName: "userSettings", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"container-fluid users-list no-cut\">\r\n <ngx-st-card\r\n [title]=\"'sapAdminBp.titleBpList' | translate\"\r\n [createLink]=\"!onlyView() ? ['create'] : undefined\"\r\n [createLinkLabel]=\"'sapAdminBp.titleBpCreate' | translate\"\r\n >\r\n <ngx-st-loader\r\n [showLoader]=\"showLoader\"\r\n [positionVal]=\"'fixed'\"\r\n ></ngx-st-loader>\r\n\r\n <form class=\"search-form row align-items-center\" (ngSubmit)=\"search()\">\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountNo' | translate }}\"\r\n [formControl]=\"codeSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearCodeSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountName' | translate }}\"\r\n [formControl]=\"nameSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearNameSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <button\r\n class=\"col-sm-6 col-md-auto\"\r\n mat-raised-button\r\n color=\"primary\"\r\n type=\"submit\"\r\n >\r\n {{ 'sapAdminBp.search' | translate }}\r\n </button>\r\n </form>\r\n\r\n <table mat-table [dataSource]=\"items\">\r\n <ng-container matColumnDef=\"activeIcon\">\r\n <th class=\"active-icon-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"active-icon-cell justify-content-start\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n @if (element.active) {\r\n <mat-icon\r\n style=\"opacity: 0.8\"\r\n [matTooltip]=\"element.inactiveReason || 'Active'\"\r\n >check_circle</mat-icon\r\n >\r\n }\r\n @if (!element.active) {\r\n <mat-icon style=\"opacity: 0.8\" [matTooltip]=\"element.inactiveReason\"\r\n >unpublished</mat-icon\r\n >\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountNo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardCode }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountName' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardName }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountType' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ 'sapAdminBp.bpType' + element.cardType | translate }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"addressShipTo\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.defaultAddressShipTo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.addressShipTo }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"inactiveComment\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.inactiveComment' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.inactiveComment }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"actions\">\r\n <th class=\"actions-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"actions-cell justify-content-end\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n >\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <a [routerLink]=\"['edit', element.cardCode]\">\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.editBp' | translate\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n </a>\r\n }\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.deleteBp' | translate\"\r\n (click)=\"delete(element)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n }\r\n\r\n @if (element.frozen && element.cardType === 'L') {\r\n <div class=\"converting-text\">\r\n {{ 'sapAdminBp.converting' | translate }}\r\n </div>\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columns\"></tr>\r\n </table>\r\n <mat-paginator\r\n [pageIndex]=\"pageIndex\"\r\n [pageSize]=\"pageSize\"\r\n [length]=\"maxResults\"\r\n [pageSizeOptions]=\"[10, 15, 20]\"\r\n (page)=\"pageChanged($event)\"\r\n ></mat-paginator>\r\n </ngx-st-card>\r\n</div>\r\n", styles: [".st-material-table .search-form button{height:40px}.st-material-table .search-form mat-form-field:first-child{padding-left:0}.st-material-table .search-form mat-form-field:last-child{padding-right:0}.st-material-table .search-form .clear{padding:0}.st-material-table .search-form .clear mat-icon{height:20px;width:20px;font-size:20px;cursor:pointer}.st-material-table table{width:100%;box-shadow:none}.st-material-table table th.mat-mdc-header-cell,.st-material-table table td.mat-mdc-cell,.st-material-table table td.mat-mdc-footer-cell{padding:0}.st-material-table table th.mat-mdc-header-cell:first-of-type,.st-material-table table td.mat-mdc-cell:first-of-type,.st-material-table table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}.st-material-table table th.mat-mdc-header-cell:last-of-type,.st-material-table table td.mat-mdc-cell:last-of-type,.st-material-table table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}.st-material-table table thead tr{background-color:#fff9c4;height:40px!important}.st-material-table table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}.st-material-table table tbody{background-color:transparent!important}.st-material-table table tbody>tr{cursor:pointer}.st-material-table table tbody>tr.active{background-color:#a5d6a7}.st-material-table table tbody>tr.active td{border-bottom-color:#81c784!important}.st-material-table table tbody>tr:hover{background-color:#f5f5f5}.st-material-table table tbody>tr.disabled{cursor:not-allowed}.st-material-table table tbody>tr.disabled:hover{background-color:inherit!important}.st-material-table table tbody>tr.detail-row{height:0;cursor:default}.st-material-table table tbody>tr.detail-row:hover{background-color:transparent}.st-material-table table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}.st-material-table table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}.st-material-table table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}.st-material-table table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}.st-material-table table tbody>tr td a button{color:#000}.st-material-table table tbody>tr td a mat-icon{color:#333}.st-material-table table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}.st-material-table table .mat-column-active{width:48px}.st-material-table table.no-hover tbody tr{cursor:default}.st-material-table table.no-hover tbody tr.active{background-color:transparent!important}.st-material-table table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}.st-material-table table.no-hover tbody tr:hover{background-color:transparent!important}.st-material-table table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}.st-material-table table.admin-table .actions-cell{width:100px}table.st-material-table{width:100%;box-shadow:none}table.st-material-table th.mat-mdc-header-cell,table.st-material-table td.mat-mdc-cell,table.st-material-table td.mat-mdc-footer-cell{padding:0}table.st-material-table th.mat-mdc-header-cell:first-of-type,table.st-material-table td.mat-mdc-cell:first-of-type,table.st-material-table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}table.st-material-table th.mat-mdc-header-cell:last-of-type,table.st-material-table td.mat-mdc-cell:last-of-type,table.st-material-table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}table.st-material-table thead tr{background-color:#fff9c4;height:40px!important}table.st-material-table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}table.st-material-table tbody{background-color:transparent!important}table.st-material-table tbody>tr{cursor:pointer}table.st-material-table tbody>tr.active{background-color:#a5d6a7}table.st-material-table tbody>tr.active td{border-bottom-color:#81c784!important}table.st-material-table tbody>tr:hover{background-color:#f5f5f5}table.st-material-table tbody>tr.disabled{cursor:not-allowed}table.st-material-table tbody>tr.disabled:hover{background-color:inherit!important}table.st-material-table tbody>tr.detail-row{height:0;cursor:default}table.st-material-table tbody>tr.detail-row:hover{background-color:transparent}table.st-material-table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table.st-material-table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table.st-material-table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table.st-material-table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table.st-material-table tbody>tr td a button{color:#000}table.st-material-table tbody>tr td a mat-icon{color:#333}table.st-material-table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}table.st-material-table .mat-column-active{width:48px}table.st-material-table.no-hover tbody tr{cursor:default}table.st-material-table.no-hover tbody tr.active{background-color:transparent!important}table.st-material-table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}table.st-material-table.no-hover tbody tr:hover{background-color:transparent!important}table.st-material-table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}table.st-material-table.admin-table .actions-cell{width:100px}.dark-theme .st-material-table table{background-color:transparent!important}.dark-theme .st-material-table table thead tr{background-color:#5e4803!important}.dark-theme .st-material-table table thead tr th{border-color:#816204!important;color:#e0e0e0!important}.dark-theme .st-material-table tbody tr:hover{background-color:var(--primeng-table-hover-background)!important}.dark-theme mat-paginator{background-color:transparent!important}.dark-theme .reorder-column-list .reorder-column-element{background-color:#424242!important;color:#eee!important}.dark-theme .reorder-column-list .reorder-column-element p,.dark-theme .reorder-column-list .reorder-column-element mat-icon{color:#eee!important}.dark-theme .filter .filter-title{color:#eee!important}table::ng-deep .actions-cell{width:115px!important}table::ng-deep .converting-text{font-weight:600;color:#fbc02d}table::ng-deep .active-icon-cell{width:42px!important}\n", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative;padding:.5rem}.card .card-body .back-link{color:#000;position:absolute;top:-40px;left:5px}\n"], dependencies: [{ kind: "component", type: i6.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i12.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: i13.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i13.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i13.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i13.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i13.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i14.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i13.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i15.LoaderComponent, selector: "ngx-st-loader", inputs: ["showLoader", "positionVal"] }, { kind: "component", type: i16.CardComponent, selector: "ngx-st-card", inputs: ["title", "createLink", "backLink", "showHistoryBack", "actionMenu", "actionButton", "noBodyTopPadding", "createLinkLabel"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SapBpListComponent, selector: "ngx-st-sap-bp-list", inputs: { onlyView: { classPropertyName: "onlyView", publicName: "onlyView", isSignal: true, isRequired: false, transformFunction: null }, userSettings: { classPropertyName: "userSettings", publicName: "userSettings", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"container-fluid users-list no-cut\">\r\n <ngx-st-card\r\n [title]=\"'sapAdminBp.titleBpList' | translate\"\r\n [createLink]=\"!onlyView() ? ['create'] : undefined\"\r\n [createLinkLabel]=\"'sapAdminBp.titleBpCreate' | translate\"\r\n >\r\n <ngx-st-loader\r\n [showLoader]=\"showLoader\"\r\n [positionVal]=\"'fixed'\"\r\n ></ngx-st-loader>\r\n\r\n <form class=\"search-form row align-items-center\" (ngSubmit)=\"search()\">\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountNo' | translate }}\"\r\n [formControl]=\"codeSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearCodeSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountName' | translate }}\"\r\n [formControl]=\"nameSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearNameSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <button\r\n class=\"col-sm-6 col-md-auto\"\r\n mat-raised-button\r\n color=\"primary\"\r\n type=\"submit\"\r\n >\r\n {{ 'sapAdminBp.search' | translate }}\r\n </button>\r\n </form>\r\n\r\n <table class=\"st-material-table\" mat-table [dataSource]=\"items\">\r\n <ng-container matColumnDef=\"activeIcon\">\r\n <th class=\"active-icon-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"active-icon-cell justify-content-start\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n @if (element.active) {\r\n <mat-icon\r\n style=\"opacity: 0.8\"\r\n [matTooltip]=\"element.inactiveReason || 'Active'\"\r\n >check_circle</mat-icon\r\n >\r\n }\r\n @if (!element.active) {\r\n <mat-icon style=\"opacity: 0.8\" [matTooltip]=\"element.inactiveReason\"\r\n >unpublished</mat-icon\r\n >\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountNo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardCode }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountName' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardName }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountType' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ 'sapAdminBp.bpType' + element.cardType | translate }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"addressShipTo\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.defaultAddressShipTo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.addressShipTo }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"inactiveComment\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.inactiveComment' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.inactiveComment }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"actions\">\r\n <th class=\"actions-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"actions-cell justify-content-end\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n >\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <a [routerLink]=\"['edit', element.cardCode]\">\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.editBp' | translate\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n </a>\r\n }\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.deleteBp' | translate\"\r\n (click)=\"delete(element)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n }\r\n\r\n @if (element.frozen && element.cardType === 'L') {\r\n <div class=\"converting-text\">\r\n {{ 'sapAdminBp.converting' | translate }}\r\n </div>\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columns\"></tr>\r\n </table>\r\n <mat-paginator\r\n [pageIndex]=\"pageIndex\"\r\n [pageSize]=\"pageSize\"\r\n [length]=\"maxResults\"\r\n [pageSizeOptions]=\"[10, 15, 20]\"\r\n (page)=\"pageChanged($event)\"\r\n ></mat-paginator>\r\n </ngx-st-card>\r\n</div>\r\n", styles: [".st-material-table .search-form button{height:40px}.st-material-table .search-form mat-form-field:first-child{padding-left:0}.st-material-table .search-form mat-form-field:last-child{padding-right:0}.st-material-table .search-form .clear{padding:0}.st-material-table .search-form .clear mat-icon{height:20px;width:20px;font-size:20px;cursor:pointer}.st-material-table table{width:100%;box-shadow:none}.st-material-table table th.mat-mdc-header-cell,.st-material-table table td.mat-mdc-cell,.st-material-table table td.mat-mdc-footer-cell{padding:0}.st-material-table table th.mat-mdc-header-cell:first-of-type,.st-material-table table td.mat-mdc-cell:first-of-type,.st-material-table table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}.st-material-table table th.mat-mdc-header-cell:last-of-type,.st-material-table table td.mat-mdc-cell:last-of-type,.st-material-table table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}.st-material-table table thead tr{background-color:#fff9c4;height:40px!important}.st-material-table table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}.st-material-table table tbody{background-color:transparent!important}.st-material-table table tbody>tr{cursor:pointer}.st-material-table table tbody>tr.active{background-color:#a5d6a7}.st-material-table table tbody>tr.active td{border-bottom-color:#81c784!important}.st-material-table table tbody>tr:hover{background-color:#f5f5f5}.st-material-table table tbody>tr.disabled{cursor:not-allowed}.st-material-table table tbody>tr.disabled:hover{background-color:inherit!important}.st-material-table table tbody>tr.detail-row{height:0;cursor:default}.st-material-table table tbody>tr.detail-row:hover{background-color:transparent}.st-material-table table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}.st-material-table table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}.st-material-table table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}.st-material-table table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}.st-material-table table tbody>tr td a button{color:#000}.st-material-table table tbody>tr td a mat-icon{color:#333}.st-material-table table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}.st-material-table table .mat-column-active{width:48px}.st-material-table table.no-hover tbody tr{cursor:default}.st-material-table table.no-hover tbody tr.active{background-color:transparent!important}.st-material-table table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}.st-material-table table.no-hover tbody tr:hover{background-color:transparent!important}.st-material-table table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}.st-material-table table.admin-table .actions-cell{width:100px}table.st-material-table{width:100%;box-shadow:none}table.st-material-table th.mat-mdc-header-cell,table.st-material-table td.mat-mdc-cell,table.st-material-table td.mat-mdc-footer-cell{padding:0}table.st-material-table th.mat-mdc-header-cell:first-of-type,table.st-material-table td.mat-mdc-cell:first-of-type,table.st-material-table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}table.st-material-table th.mat-mdc-header-cell:last-of-type,table.st-material-table td.mat-mdc-cell:last-of-type,table.st-material-table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}table.st-material-table thead tr{background-color:#fff9c4;height:40px!important}table.st-material-table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}table.st-material-table tbody{background-color:transparent!important}table.st-material-table tbody>tr{cursor:pointer}table.st-material-table tbody>tr.active{background-color:#a5d6a7}table.st-material-table tbody>tr.active td{border-bottom-color:#81c784!important}table.st-material-table tbody>tr:hover{background-color:#f5f5f5}table.st-material-table tbody>tr.disabled{cursor:not-allowed}table.st-material-table tbody>tr.disabled:hover{background-color:inherit!important}table.st-material-table tbody>tr.detail-row{height:0;cursor:default}table.st-material-table tbody>tr.detail-row:hover{background-color:transparent}table.st-material-table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table.st-material-table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table.st-material-table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table.st-material-table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table.st-material-table tbody>tr td a button{color:#000}table.st-material-table tbody>tr td a mat-icon{color:#333}table.st-material-table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}table.st-material-table .mat-column-active{width:48px}table.st-material-table.no-hover tbody tr{cursor:default}table.st-material-table.no-hover tbody tr.active{background-color:transparent!important}table.st-material-table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}table.st-material-table.no-hover tbody tr:hover{background-color:transparent!important}table.st-material-table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}table.st-material-table.admin-table .actions-cell{width:100px}.dark-theme .st-material-table table{background-color:transparent!important}.dark-theme .st-material-table table thead tr{background-color:#5e4803!important}.dark-theme .st-material-table table thead tr th{border-color:#816204!important;color:#e0e0e0!important}.dark-theme .st-material-table tbody tr:hover{background-color:var(--primeng-table-hover-background)!important}.dark-theme mat-paginator{background-color:transparent!important}.dark-theme .reorder-column-list .reorder-column-element{background-color:#424242!important;color:#eee!important}.dark-theme .reorder-column-list .reorder-column-element p,.dark-theme .reorder-column-list .reorder-column-element mat-icon{color:#eee!important}.dark-theme .filter .filter-title{color:#eee!important}table::ng-deep .actions-cell{width:115px!important}table::ng-deep .converting-text{font-weight:600;color:#fbc02d}table::ng-deep .active-icon-cell{width:42px!important}\n", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative;padding:.5rem}.card .card-body .back-link{color:#000;position:absolute;top:-40px;left:5px}\n"], dependencies: [{ kind: "component", type: i6.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i12.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: i13.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i13.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i13.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i13.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i13.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i14.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i13.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i15.LoaderComponent, selector: "ngx-st-loader", inputs: ["showLoader", "positionVal"] }, { kind: "component", type: i16.CardComponent, selector: "ngx-st-card", inputs: ["title", "createLink", "backLink", "showHistoryBack", "actionMenu", "actionButton", "noBodyTopPadding", "createLinkLabel"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
108
108
  }
109
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SapBpListComponent, decorators: [{
110
110
  type: Component,
111
- args: [{ selector: 'ngx-st-sap-bp-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-fluid users-list no-cut\">\r\n <ngx-st-card\r\n [title]=\"'sapAdminBp.titleBpList' | translate\"\r\n [createLink]=\"!onlyView() ? ['create'] : undefined\"\r\n [createLinkLabel]=\"'sapAdminBp.titleBpCreate' | translate\"\r\n >\r\n <ngx-st-loader\r\n [showLoader]=\"showLoader\"\r\n [positionVal]=\"'fixed'\"\r\n ></ngx-st-loader>\r\n\r\n <form class=\"search-form row align-items-center\" (ngSubmit)=\"search()\">\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountNo' | translate }}\"\r\n [formControl]=\"codeSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearCodeSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountName' | translate }}\"\r\n [formControl]=\"nameSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearNameSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <button\r\n class=\"col-sm-6 col-md-auto\"\r\n mat-raised-button\r\n color=\"primary\"\r\n type=\"submit\"\r\n >\r\n {{ 'sapAdminBp.search' | translate }}\r\n </button>\r\n </form>\r\n\r\n <table mat-table [dataSource]=\"items\">\r\n <ng-container matColumnDef=\"activeIcon\">\r\n <th class=\"active-icon-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"active-icon-cell justify-content-start\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n @if (element.active) {\r\n <mat-icon\r\n style=\"opacity: 0.8\"\r\n [matTooltip]=\"element.inactiveReason || 'Active'\"\r\n >check_circle</mat-icon\r\n >\r\n }\r\n @if (!element.active) {\r\n <mat-icon style=\"opacity: 0.8\" [matTooltip]=\"element.inactiveReason\"\r\n >unpublished</mat-icon\r\n >\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountNo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardCode }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountName' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardName }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountType' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ 'sapAdminBp.bpType' + element.cardType | translate }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"addressShipTo\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.defaultAddressShipTo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.addressShipTo }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"inactiveComment\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.inactiveComment' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.inactiveComment }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"actions\">\r\n <th class=\"actions-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"actions-cell justify-content-end\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n >\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <a [routerLink]=\"['edit', element.cardCode]\">\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.editBp' | translate\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n </a>\r\n }\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.deleteBp' | translate\"\r\n (click)=\"delete(element)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n }\r\n\r\n @if (element.frozen && element.cardType === 'L') {\r\n <div class=\"converting-text\">\r\n {{ 'sapAdminBp.converting' | translate }}\r\n </div>\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columns\"></tr>\r\n </table>\r\n <mat-paginator\r\n [pageIndex]=\"pageIndex\"\r\n [pageSize]=\"pageSize\"\r\n [length]=\"maxResults\"\r\n [pageSizeOptions]=\"[10, 15, 20]\"\r\n (page)=\"pageChanged($event)\"\r\n ></mat-paginator>\r\n </ngx-st-card>\r\n</div>\r\n", styles: [".st-material-table .search-form button{height:40px}.st-material-table .search-form mat-form-field:first-child{padding-left:0}.st-material-table .search-form mat-form-field:last-child{padding-right:0}.st-material-table .search-form .clear{padding:0}.st-material-table .search-form .clear mat-icon{height:20px;width:20px;font-size:20px;cursor:pointer}.st-material-table table{width:100%;box-shadow:none}.st-material-table table th.mat-mdc-header-cell,.st-material-table table td.mat-mdc-cell,.st-material-table table td.mat-mdc-footer-cell{padding:0}.st-material-table table th.mat-mdc-header-cell:first-of-type,.st-material-table table td.mat-mdc-cell:first-of-type,.st-material-table table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}.st-material-table table th.mat-mdc-header-cell:last-of-type,.st-material-table table td.mat-mdc-cell:last-of-type,.st-material-table table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}.st-material-table table thead tr{background-color:#fff9c4;height:40px!important}.st-material-table table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}.st-material-table table tbody{background-color:transparent!important}.st-material-table table tbody>tr{cursor:pointer}.st-material-table table tbody>tr.active{background-color:#a5d6a7}.st-material-table table tbody>tr.active td{border-bottom-color:#81c784!important}.st-material-table table tbody>tr:hover{background-color:#f5f5f5}.st-material-table table tbody>tr.disabled{cursor:not-allowed}.st-material-table table tbody>tr.disabled:hover{background-color:inherit!important}.st-material-table table tbody>tr.detail-row{height:0;cursor:default}.st-material-table table tbody>tr.detail-row:hover{background-color:transparent}.st-material-table table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}.st-material-table table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}.st-material-table table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}.st-material-table table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}.st-material-table table tbody>tr td a button{color:#000}.st-material-table table tbody>tr td a mat-icon{color:#333}.st-material-table table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}.st-material-table table .mat-column-active{width:48px}.st-material-table table.no-hover tbody tr{cursor:default}.st-material-table table.no-hover tbody tr.active{background-color:transparent!important}.st-material-table table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}.st-material-table table.no-hover tbody tr:hover{background-color:transparent!important}.st-material-table table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}.st-material-table table.admin-table .actions-cell{width:100px}table.st-material-table{width:100%;box-shadow:none}table.st-material-table th.mat-mdc-header-cell,table.st-material-table td.mat-mdc-cell,table.st-material-table td.mat-mdc-footer-cell{padding:0}table.st-material-table th.mat-mdc-header-cell:first-of-type,table.st-material-table td.mat-mdc-cell:first-of-type,table.st-material-table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}table.st-material-table th.mat-mdc-header-cell:last-of-type,table.st-material-table td.mat-mdc-cell:last-of-type,table.st-material-table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}table.st-material-table thead tr{background-color:#fff9c4;height:40px!important}table.st-material-table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}table.st-material-table tbody{background-color:transparent!important}table.st-material-table tbody>tr{cursor:pointer}table.st-material-table tbody>tr.active{background-color:#a5d6a7}table.st-material-table tbody>tr.active td{border-bottom-color:#81c784!important}table.st-material-table tbody>tr:hover{background-color:#f5f5f5}table.st-material-table tbody>tr.disabled{cursor:not-allowed}table.st-material-table tbody>tr.disabled:hover{background-color:inherit!important}table.st-material-table tbody>tr.detail-row{height:0;cursor:default}table.st-material-table tbody>tr.detail-row:hover{background-color:transparent}table.st-material-table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table.st-material-table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table.st-material-table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table.st-material-table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table.st-material-table tbody>tr td a button{color:#000}table.st-material-table tbody>tr td a mat-icon{color:#333}table.st-material-table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}table.st-material-table .mat-column-active{width:48px}table.st-material-table.no-hover tbody tr{cursor:default}table.st-material-table.no-hover tbody tr.active{background-color:transparent!important}table.st-material-table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}table.st-material-table.no-hover tbody tr:hover{background-color:transparent!important}table.st-material-table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}table.st-material-table.admin-table .actions-cell{width:100px}.dark-theme .st-material-table table{background-color:transparent!important}.dark-theme .st-material-table table thead tr{background-color:#5e4803!important}.dark-theme .st-material-table table thead tr th{border-color:#816204!important;color:#e0e0e0!important}.dark-theme .st-material-table tbody tr:hover{background-color:var(--primeng-table-hover-background)!important}.dark-theme mat-paginator{background-color:transparent!important}.dark-theme .reorder-column-list .reorder-column-element{background-color:#424242!important;color:#eee!important}.dark-theme .reorder-column-list .reorder-column-element p,.dark-theme .reorder-column-list .reorder-column-element mat-icon{color:#eee!important}.dark-theme .filter .filter-title{color:#eee!important}table::ng-deep .actions-cell{width:115px!important}table::ng-deep .converting-text{font-weight:600;color:#fbc02d}table::ng-deep .active-icon-cell{width:42px!important}\n", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative;padding:.5rem}.card .card-body .back-link{color:#000;position:absolute;top:-40px;left:5px}\n"] }]
111
+ args: [{ selector: 'ngx-st-sap-bp-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-fluid users-list no-cut\">\r\n <ngx-st-card\r\n [title]=\"'sapAdminBp.titleBpList' | translate\"\r\n [createLink]=\"!onlyView() ? ['create'] : undefined\"\r\n [createLinkLabel]=\"'sapAdminBp.titleBpCreate' | translate\"\r\n >\r\n <ngx-st-loader\r\n [showLoader]=\"showLoader\"\r\n [positionVal]=\"'fixed'\"\r\n ></ngx-st-loader>\r\n\r\n <form class=\"search-form row align-items-center\" (ngSubmit)=\"search()\">\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountNo' | translate }}\"\r\n [formControl]=\"codeSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearCodeSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-12 col-md row align-items-center\">\r\n <mat-form-field class=\"col\">\r\n <input\r\n matInput\r\n placeholder=\"{{ 'sapAdminBp.accountName' | translate }}\"\r\n [formControl]=\"nameSearch\"\r\n />\r\n </mat-form-field>\r\n <div class=\"clear col-auto\">\r\n <mat-icon (click)=\"clearNameSearch()\">clear</mat-icon>\r\n </div>\r\n </div>\r\n <button\r\n class=\"col-sm-6 col-md-auto\"\r\n mat-raised-button\r\n color=\"primary\"\r\n type=\"submit\"\r\n >\r\n {{ 'sapAdminBp.search' | translate }}\r\n </button>\r\n </form>\r\n\r\n <table class=\"st-material-table\" mat-table [dataSource]=\"items\">\r\n <ng-container matColumnDef=\"activeIcon\">\r\n <th class=\"active-icon-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"active-icon-cell justify-content-start\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n @if (element.active) {\r\n <mat-icon\r\n style=\"opacity: 0.8\"\r\n [matTooltip]=\"element.inactiveReason || 'Active'\"\r\n >check_circle</mat-icon\r\n >\r\n }\r\n @if (!element.active) {\r\n <mat-icon style=\"opacity: 0.8\" [matTooltip]=\"element.inactiveReason\"\r\n >unpublished</mat-icon\r\n >\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountNo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardCode }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountName' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.cardName }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"cardType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.accountType' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ 'sapAdminBp.bpType' + element.cardType | translate }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"addressShipTo\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.defaultAddressShipTo' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.addressShipTo }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"inactiveComment\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminBp.inactiveComment' | translate }}\r\n </th>\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [routerLink]=\"['details', element.cardCode]\"\r\n >\r\n {{ element.inactiveComment }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"actions\">\r\n <th class=\"actions-cell\" mat-header-cell *matHeaderCellDef></th>\r\n <td\r\n class=\"actions-cell justify-content-end\"\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n >\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <a [routerLink]=\"['edit', element.cardCode]\">\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.editBp' | translate\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n </a>\r\n }\r\n @if (\r\n (userSettings().oracleBpEdit &&\r\n (!element.frozen ||\r\n (element.frozen && element.cardType === 'C'))) ||\r\n (!userSettings().oracleBpEdit &&\r\n (!element.frozen || (element.frozen && element.cardType === 'C')))\r\n ) {\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'sapAdminBp.deleteBp' | translate\"\r\n (click)=\"delete(element)\"\r\n >\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n }\r\n\r\n @if (element.frozen && element.cardType === 'L') {\r\n <div class=\"converting-text\">\r\n {{ 'sapAdminBp.converting' | translate }}\r\n </div>\r\n }\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: columns\"></tr>\r\n </table>\r\n <mat-paginator\r\n [pageIndex]=\"pageIndex\"\r\n [pageSize]=\"pageSize\"\r\n [length]=\"maxResults\"\r\n [pageSizeOptions]=\"[10, 15, 20]\"\r\n (page)=\"pageChanged($event)\"\r\n ></mat-paginator>\r\n </ngx-st-card>\r\n</div>\r\n", styles: [".st-material-table .search-form button{height:40px}.st-material-table .search-form mat-form-field:first-child{padding-left:0}.st-material-table .search-form mat-form-field:last-child{padding-right:0}.st-material-table .search-form .clear{padding:0}.st-material-table .search-form .clear mat-icon{height:20px;width:20px;font-size:20px;cursor:pointer}.st-material-table table{width:100%;box-shadow:none}.st-material-table table th.mat-mdc-header-cell,.st-material-table table td.mat-mdc-cell,.st-material-table table td.mat-mdc-footer-cell{padding:0}.st-material-table table th.mat-mdc-header-cell:first-of-type,.st-material-table table td.mat-mdc-cell:first-of-type,.st-material-table table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}.st-material-table table th.mat-mdc-header-cell:last-of-type,.st-material-table table td.mat-mdc-cell:last-of-type,.st-material-table table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}.st-material-table table thead tr{background-color:#fff9c4;height:40px!important}.st-material-table table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}.st-material-table table tbody{background-color:transparent!important}.st-material-table table tbody>tr{cursor:pointer}.st-material-table table tbody>tr.active{background-color:#a5d6a7}.st-material-table table tbody>tr.active td{border-bottom-color:#81c784!important}.st-material-table table tbody>tr:hover{background-color:#f5f5f5}.st-material-table table tbody>tr.disabled{cursor:not-allowed}.st-material-table table tbody>tr.disabled:hover{background-color:inherit!important}.st-material-table table tbody>tr.detail-row{height:0;cursor:default}.st-material-table table tbody>tr.detail-row:hover{background-color:transparent}.st-material-table table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}.st-material-table table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}.st-material-table table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}.st-material-table table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}.st-material-table table tbody>tr td a button{color:#000}.st-material-table table tbody>tr td a mat-icon{color:#333}.st-material-table table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}.st-material-table table .mat-column-active{width:48px}.st-material-table table.no-hover tbody tr{cursor:default}.st-material-table table.no-hover tbody tr.active{background-color:transparent!important}.st-material-table table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}.st-material-table table.no-hover tbody tr:hover{background-color:transparent!important}.st-material-table table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}.st-material-table table.admin-table .actions-cell{width:100px}table.st-material-table{width:100%;box-shadow:none}table.st-material-table th.mat-mdc-header-cell,table.st-material-table td.mat-mdc-cell,table.st-material-table td.mat-mdc-footer-cell{padding:0}table.st-material-table th.mat-mdc-header-cell:first-of-type,table.st-material-table td.mat-mdc-cell:first-of-type,table.st-material-table td.mat-mdc-footer-cell:first-of-type{padding-left:12px}table.st-material-table th.mat-mdc-header-cell:last-of-type,table.st-material-table td.mat-mdc-cell:last-of-type,table.st-material-table td.mat-mdc-footer-cell:last-of-type{padding-right:12px}table.st-material-table thead tr{background-color:#fff9c4;height:40px!important}table.st-material-table thead tr th{border-color:#fdd835;font-size:.9rem;font-weight:500;color:#424242}table.st-material-table tbody{background-color:transparent!important}table.st-material-table tbody>tr{cursor:pointer}table.st-material-table tbody>tr.active{background-color:#a5d6a7}table.st-material-table tbody>tr.active td{border-bottom-color:#81c784!important}table.st-material-table tbody>tr:hover{background-color:#f5f5f5}table.st-material-table tbody>tr.disabled{cursor:not-allowed}table.st-material-table tbody>tr.disabled:hover{background-color:inherit!important}table.st-material-table tbody>tr.detail-row{height:0;cursor:default}table.st-material-table tbody>tr.detail-row:hover{background-color:transparent}table.st-material-table tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table.st-material-table tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table.st-material-table tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table.st-material-table tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table.st-material-table tbody>tr td a button{color:#000}table.st-material-table tbody>tr td a mat-icon{color:#333}table.st-material-table tbody>tr:last-child td{border-bottom-color:var(--mat-table-row-item-outline-color, rgba(0, 0, 0, .12))!important;border-bottom-width:var(--mat-table-row-item-outline-width, 1px)!important;border-bottom-style:solid!important}table.st-material-table .mat-column-active{width:48px}table.st-material-table.no-hover tbody tr{cursor:default}table.st-material-table.no-hover tbody tr.active{background-color:transparent!important}table.st-material-table.no-hover tbody tr.active td{border-bottom-color:#0000001f!important}table.st-material-table.no-hover tbody tr:hover{background-color:transparent!important}table.st-material-table.no-hover tbody tr:hover td{border-bottom-color:#0000001f!important}table.st-material-table.admin-table .actions-cell{width:100px}.dark-theme .st-material-table table{background-color:transparent!important}.dark-theme .st-material-table table thead tr{background-color:#5e4803!important}.dark-theme .st-material-table table thead tr th{border-color:#816204!important;color:#e0e0e0!important}.dark-theme .st-material-table tbody tr:hover{background-color:var(--primeng-table-hover-background)!important}.dark-theme mat-paginator{background-color:transparent!important}.dark-theme .reorder-column-list .reorder-column-element{background-color:#424242!important;color:#eee!important}.dark-theme .reorder-column-list .reorder-column-element p,.dark-theme .reorder-column-list .reorder-column-element mat-icon{color:#eee!important}.dark-theme .filter .filter-title{color:#eee!important}table::ng-deep .actions-cell{width:115px!important}table::ng-deep .converting-text{font-weight:600;color:#fbc02d}table::ng-deep .active-icon-cell{width:42px!important}\n", ".card{background:#fff;border:none;box-shadow:0 1px 4px #00000024;margin-bottom:30px;margin-top:30px;font-size:1rem}.card .card-header{max-width:380px;text-align:center;margin-left:auto!important;margin-right:auto!important;border-radius:3px;margin-top:-20px;background:linear-gradient(60deg,#ffa726,#fb8c00)!important;padding:15px 30px;border:none}.card .card-header h4,.card .card-header h3{margin:0!important;color:#fff;font-size:1.5625rem;line-height:1.4em;font-weight:400}.card .card-body{position:relative;padding:.5rem}.card .card-body .back-link{color:#000;position:absolute;top:-40px;left:5px}\n"] }]
112
112
  }], ctorParameters: () => [{ type: i1.SapBpService }, { type: i2.MatDialog }, { type: i3.StSnackBarService }, { type: i4.TranslateService }, { type: i5.StDialogTranslatedService }, { type: i0.ChangeDetectorRef }], propDecorators: { class: [{
113
113
  type: HostBinding,
114
114
  args: ['class']
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
116
116
  type: ViewChild,
117
117
  args: [MatPaginator]
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FwLWJwLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1icC9zcmMvbGliL2NvbXBvbmVudHMvc2FwLWJwLWxpc3Qvc2FwLWJwLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1icC9zcmMvbGliL2NvbXBvbmVudHMvc2FwLWJwLWxpc3Qvc2FwLWJwLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsV0FBVyxFQUVYLFNBQVMsRUFDVCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBWTNELE1BQU0sT0FBTyxrQkFBa0I7SUE2QjdCLFlBQ1UsWUFBMEIsRUFDMUIsTUFBaUIsRUFDakIsS0FBd0IsRUFDeEIsZ0JBQWtDLEVBQ2xDLHlCQUFvRCxFQUNwRCxjQUFpQztRQUxqQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ3hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFsQ3JCLFVBQUssR0FBRyx3QkFBd0IsQ0FBQztRQUd2RCxhQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhCLGlCQUFZLEdBQUcsS0FBSyxDQUFD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Q2QsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQ3RCO2FBQ0EsU0FBUyxDQUNSLEdBQUcsQ0FBQyxFQUFFO1lBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQztZQUVqQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztZQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JDLENBQUMsRUFDRCxLQUFLLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDOytHQXBIVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwrYUFFbEIsWUFBWSxnRENoQ3pCLDZuTkFrTUE7OzRGRHBLYSxrQkFBa0I7a0JBVDlCLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQU1iLHVCQUF1QixDQUFDLE1BQU07Z1BBR3pCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTztnQkFDSyxTQUFTO3NCQUFqQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIE9uSW5pdCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgaW5wdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhcEJwU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhcC1icC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYXBCcExpc3RNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXAtYnAtbGlzdC5tb2RlbCc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3RTbmFja0JhclNlcnZpY2UgfSBmcm9tICduZ3gtc3Qtc25hY2stYmFyJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBTYXBCcFVzZXJTZXR0aW5ncyB9IGZyb20gJy4uL3NhcC1icC1iYXNlLWNyZWF0ZS1lZGl0JztcclxuaW1wb3J0IHsgU3REaWFsb2dUcmFuc2xhdGVkU2VydmljZSB9IGZyb20gJ25neC1zdC1kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICduZ3gtc3Qtc2FwLWJwLWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zYXAtYnAtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICAnLi9zYXAtYnAtbGlzdC5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi4vLi4vLi4vLi4vYXNzZXRzL2Jhc2UtY2FyZC5zY3NzJyxcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FwQnBMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3MgPSAnZGlzcGxheS1mbGV4LWNvbXBvbmVudCc7XHJcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xyXG5cclxuICBvbmx5VmlldyA9IGlucHV0KGZhbHNlKTtcclxuXHJcbiAgdXNlclNldHRpbmdzID0gaW5wdXQucmVxdWlyZWQ8U2FwQnBVc2VyU2V0dGluZ3M+KCk7XHJcblxyXG4gIGNvbHVtbnM6IHN0cmluZ1tdID0gW1xyXG4gICAgJ2FjdGl2ZUljb24nLFxyXG4gICAgJ2NhcmRDb2RlJyxcclxuICAgICdjYXJkTmFtZScsXHJcbiAgICAnY2FyZFR5cGUnLFxyXG4gICAgJ2FkZHJlc3NTaGlwVG8nLFxyXG4gICAgJ2luYWN0aXZlQ29tbWVudCcsXHJcbiAgICAnYWN0aW9ucycsXHJcbiAgXTtcclxuXHJcbiAgY29kZVNlYXJjaCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpO1xyXG4gIG5hbWVTZWFyY2ggPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKTtcclxuXHJcbiAgaXRlbXM6IFNhcEJwTGlzdE1vZGVsW10gPSBbXTtcclxuXHJcbiAgbWF4UmVzdWx0cyA9IDA7XHJcbiAgcGFnZUluZGV4ID0gMDtcclxuICBwYWdlU2l6ZSA9IDEwO1xyXG5cclxuICBzaG93TG9hZGVyID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzYXBCcFNlcnZpY2U6IFNhcEJwU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHNuYWNrOiBTdFNuYWNrQmFyU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgc3REaWFsb2dUcmFuc2xhdGVkU2VydmljZTogU3REaWFsb2dUcmFuc2xhdGVkU2VydmljZSxcclxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhZ2VTaXplID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3NhcC1icC1saXN0LXBhZ2Utc2l6ZScpO1xyXG4gICAgaWYgKHBhZ2VTaXplKSB7XHJcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwYXJzZUludChwYWdlU2l6ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMub25seVZpZXcoKSkge1xyXG4gICAgICB0aGlzLmNvbHVtbnMucG9wKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sb2FkSXRlbXMoMCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnBhZ2luYXRvci5wYWdlLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc2FwLWl0ZW0tbGlzdC1wYWdlLXNpemUnLCByZXMucGFnZVNpemUudG9TdHJpbmcoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNsZWFyQ29kZVNlYXJjaCgpIHtcclxuICAgIHRoaXMuY29kZVNlYXJjaC5zZXRWYWx1ZSgnJyk7XHJcbiAgICB0aGlzLmxvYWRJdGVtcygwKTtcclxuICB9XHJcblxyXG4gIGNsZWFyTmFtZVNlYXJjaCgpIHtcclxuICAgIHRoaXMubmFtZVNlYXJjaC5zZXRWYWx1ZSgnJyk7XHJcbiAgICB0aGlzLmxvYWRJdGVtcygwKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaCgpIHtcclxuICAgIHRoaXMubG9hZEl0ZW1zKDApO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlKGl0ZW06IFNhcEJwTGlzdE1vZGVsKSB7XHJcbiAgICB0aGlzLnN0RGlhbG9nVHJhbnNsYXRlZFNlcnZpY2VcclxuICAgICAgLnNob3dEZWxldGVXYXJuaW5nKClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLnNhcEJwU2VydmljZS5kZWxldGUoaXRlbS5jYXJkQ29kZSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgdGhpcy5zbmFjay5zdWNjZXNzKFxyXG4gICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3NhcEFkbWluSXRlbS5pdGVtRGVsZXRlZCcpXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmxvYWRJdGVtcyh0aGlzLnBhZ2VJbmRleCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcGFnZUNoYW5nZWQgPSAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5wYWdlU2l6ZSA9IGV2ZW50LnBhZ2VTaXplO1xyXG4gICAgdGhpcy5sb2FkSXRlbXMoZXZlbnQucGFnZUluZGV4KTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGxvYWRJdGVtcyhwYWdlTnVtYmVyOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2hvd0xvYWRlciA9IHRydWU7XHJcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG5cclxuICAgIHRoaXMuc2FwQnBTZXJ2aWNlXHJcbiAgICAgIC5nZXRMaXN0KFxyXG4gICAgICAgIHBhZ2VOdW1iZXIgKyAxLFxyXG4gICAgICAgIHRoaXMucGFnZVNpemUsXHJcbiAgICAgICAgdGhpcy5jb2RlU2VhcmNoLnZhbHVlLFxyXG4gICAgICAgIHRoaXMubmFtZVNlYXJjaC52YWx1ZVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgIHRoaXMuaXRlbXMgPSByZXMuZGF0YTtcclxuICAgICAgICAgIHRoaXMubWF4UmVzdWx0cyA9IHJlcy50b3RhbENvdW50O1xyXG5cclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQgdXNlcnMtbGlzdCBuby1jdXRcIj5cclxuICA8bmd4LXN0LWNhcmRcclxuICAgIFt0aXRsZV09XCInc2FwQWRtaW5CcC50aXRsZUJwTGlzdCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgW2NyZWF0ZUxpbmtdPVwiIW9ubHlWaWV3KCkgPyBbJ2NyZWF0ZSddIDogdW5kZWZpbmVkXCJcclxuICAgIFtjcmVhdGVMaW5rTGFiZWxdPVwiJ3NhcEFkbWluQnAudGl0bGVCcENyZWF0ZScgfCB0cmFuc2xhdGVcIlxyXG4gID5cclxuICAgIDxuZ3gtc3QtbG9hZGVyXHJcbiAgICAgIFtzaG93TG9hZGVyXT1cInNob3dMb2FkZXJcIlxyXG4gICAgICBbcG9zaXRpb25WYWxdPVwiJ2ZpeGVkJ1wiXHJcbiAgICA+PC9uZ3gtc3QtbG9hZGVyPlxyXG5cclxuICAgIDxmb3JtIGNsYXNzPVwic2VhcmNoLWZvcm0gcm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIChuZ1N1Ym1pdCk9XCJzZWFyY2goKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIGNvbC1tZCByb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnc2FwQWRtaW5CcC5hY2NvdW50Tm8nIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvZGVTZWFyY2hcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbGVhciBjb2wtYXV0b1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIChjbGljayk9XCJjbGVhckNvZGVTZWFyY2goKVwiPmNsZWFyPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTIgY29sLW1kIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdzYXBBZG1pbkJwLmFjY291bnROYW1lJyB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJuYW1lU2VhcmNoXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xlYXIgY29sLWF1dG9cIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiY2xlYXJOYW1lU2VhcmNoKClcIj5jbGVhcjwvbWF0LWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJjb2wtc20tNiBjb2wtbWQtYXV0b1wiXHJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cclxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgJ3NhcEFkbWluQnAuc2VhcmNoJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZm9ybT5cclxuXHJcbiAgICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cIml0ZW1zXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiYWN0aXZlSWNvblwiPlxyXG4gICAgICAgIDx0aCBjbGFzcz1cImFjdGl2ZS1pY29uLWNlbGxcIiBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+PC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIGNsYXNzPVwiYWN0aXZlLWljb24tY2VsbCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnRcIlxyXG4gICAgICAgICAgbWF0LWNlbGxcclxuICAgICAgICAgICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIlxyXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWydkZXRhaWxzJywgZWxlbWVudC5jYXJkQ29kZV1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIEBpZiAoZWxlbWVudC5hY3RpdmUpIHtcclxuICAgICAgICAgICAgPG1hdC1pY29uXHJcbiAgICAgICAgICAgICAgc3R5bGU9XCJvcGFjaXR5OiAwLjhcIlxyXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImVsZW1lbnQuaW5hY3RpdmVSZWFzb24gfHwgJ0FjdGl2ZSdcIlxyXG4gICAgICAgICAgICAgID5jaGVja19jaXJjbGU8L21hdC1pY29uXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoIWVsZW1lbnQuYWN0aXZlKSB7XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdHlsZT1cIm9wYWNpdHk6IDAuOFwiIFttYXRUb29sdGlwXT1cImVsZW1lbnQuaW5hY3RpdmVSZWFzb25cIlxyXG4gICAgICAgICAgICAgID51bnB1Ymxpc2hlZDwvbWF0LWljb25cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjYXJkQ29kZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgICB7eyAnc2FwQWRtaW5CcC5hY2NvdW50Tm8nIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnZGV0YWlscycsIGVsZW1lbnQuY2FyZENvZGVdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBlbGVtZW50LmNhcmRDb2RlIH19XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImNhcmROYW1lXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICAgIHt7ICdzYXBBZG1pbkJwLmFjY291bnROYW1lJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICBtYXQtY2VsbFxyXG4gICAgICAgICAgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiXHJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJbJ2RldGFpbHMnLCBlbGVtZW50LmNhcmRDb2RlXVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3sgZWxlbWVudC5jYXJkTmFtZSB9fVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjYXJkVHlwZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgICB7eyAnc2FwQWRtaW5CcC5hY2NvdW50VHlwZScgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3RoPlxyXG4gICAgICAgIDx0ZFxyXG4gICAgICAgICAgbWF0LWNlbGxcclxuICAgICAgICAgICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIlxyXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWydkZXRhaWxzJywgZWxlbWVudC5jYXJkQ29kZV1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7ICdzYXBBZG1pbkJwLmJwVHlwZScgKyBlbGVtZW50LmNhcmRUeXBlIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImFkZHJlc3NTaGlwVG9cIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPlxyXG4gICAgICAgICAge3sgJ3NhcEFkbWluQnAuZGVmYXVsdEFkZHJlc3NTaGlwVG8nIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnZGV0YWlscycsIGVsZW1lbnQuY2FyZENvZGVdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBlbGVtZW50LmFkZHJlc3NTaGlwVG8gfX1cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiaW5hY3RpdmVDb21tZW50XCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICAgIHt7ICdzYXBBZG1pbkJwLmluYWN0aXZlQ29tbWVudCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3RoPlxyXG4gICAgICAgIDx0ZFxyXG4gICAgICAgICAgbWF0LWNlbGxcclxuICAgICAgICAgICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIlxyXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWydkZXRhaWxzJywgZWxlbWVudC5jYXJkQ29kZV1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7IGVsZW1lbnQuaW5hY3RpdmVDb21tZW50IH19XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImFjdGlvbnNcIj5cclxuICAgICAgICA8dGggY2xhc3M9XCJhY3Rpb25zLWNlbGxcIiBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+PC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIGNsYXNzPVwiYWN0aW9ucy1jZWxsIGp1c3RpZnktY29udGVudC1lbmRcIlxyXG4gICAgICAgICAgbWF0LWNlbGxcclxuICAgICAgICAgICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIEBpZiAoXHJcbiAgICAgICAgICAgICh1c2VyU2V0dGluZ3MoKS5vcmFjbGVCcEVkaXQgJiZcclxuICAgICAgICAgICAgICAoIWVsZW1lbnQuZnJvemVuIHx8XHJcbiAgICAgICAgICAgICAgICAoZWxlbWVudC5mcm96ZW4gJiYgZWxlbWVudC5jYXJkVHlwZSA9PT0gJ0MnKSkpIHx8XHJcbiAgICAgICAgICAgICghdXNlclNldHRpbmdzKCkub3JhY2xlQnBFZGl0ICYmXHJcbiAgICAgICAgICAgICAgKCFlbGVtZW50LmZyb3plbiB8fCAoZWxlbWVudC5mcm96ZW4gJiYgZWxlbWVudC5jYXJkVHlwZSA9PT0gJ0MnKSkpXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWydlZGl0JywgZWxlbWVudC5jYXJkQ29kZV1cIj5cclxuICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidzYXBBZG1pbkJwLmVkaXRCcCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGlmIChcclxuICAgICAgICAgICAgKHVzZXJTZXR0aW5ncygpLm9yYWNsZUJwRWRpdCAmJlxyXG4gICAgICAgICAgICAgICghZWxlbWVudC5mcm96ZW4gfHxcclxuICAgICAgICAgICAgICAgIChlbGVtZW50LmZyb3plbiAmJiBlbGVtZW50LmNhcmRUeXBlID09PSAnQycpKSkgfHxcclxuICAgICAgICAgICAgKCF1c2VyU2V0dGluZ3MoKS5vcmFjbGVCcEVkaXQgJiZcclxuICAgICAgICAgICAgICAoIWVsZW1lbnQuZnJvemVuIHx8IChlbGVtZW50LmZyb3plbiAmJiBlbGVtZW50LmNhcmRUeXBlID09PSAnQycpKSlcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ3NhcEFkbWluQnAuZGVsZXRlQnAnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlKGVsZW1lbnQpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAaWYgKGVsZW1lbnQuZnJvemVuICYmIGVsZW1lbnQuY2FyZFR5cGUgPT09ICdMJykge1xyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udmVydGluZy10ZXh0XCI+XHJcbiAgICAgICAgICAgICAge3sgJ3NhcEFkbWluQnAuY29udmVydGluZycgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbnNcIj48L3RyPlxyXG4gICAgICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogY29sdW1uc1wiPjwvdHI+XHJcbiAgICA8L3RhYmxlPlxyXG4gICAgPG1hdC1wYWdpbmF0b3JcclxuICAgICAgW3BhZ2VJbmRleF09XCJwYWdlSW5kZXhcIlxyXG4gICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxyXG4gICAgICBbbGVuZ3RoXT1cIm1heFJlc3VsdHNcIlxyXG4gICAgICBbcGFnZVNpemVPcHRpb25zXT1cIlsxMCwgMTUsIDIwXVwiXHJcbiAgICAgIChwYWdlKT1cInBhZ2VDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgPjwvbWF0LXBhZ2luYXRvcj5cclxuICA8L25neC1zdC1jYXJkPlxyXG48L2Rpdj5cclxuIl19
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FwLWJwLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1icC9zcmMvbGliL2NvbXBvbmVudHMvc2FwLWJwLWxpc3Qvc2FwLWJwLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXNhcC1icC9zcmMvbGliL2NvbXBvbmVudHMvc2FwLWJwLWxpc3Qvc2FwLWJwLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsV0FBVyxFQUVYLFNBQVMsRUFDVCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBWTNELE1BQU0sT0FBTyxrQkFBa0I7SUE2QjdCLFlBQ1UsWUFBMEIsRUFDMUIsTUFBaUIsRUFDakIsS0FBd0IsRUFDeEIsZ0JBQWtDLEVBQ2xDLHlCQUFvRCxFQUNwRCxjQUFpQztRQUxqQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ3hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFsQ3JCLFVBQUssR0FBRyx3QkFBd0IsQ0FBQztRQUd2RCxhQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhCLGlCQUFZLEdBQUcsS0FBSyxDQUFD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Q2QsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQ3RCO2FBQ0EsU0FBUyxDQUNSLEdBQUcsQ0FBQyxFQUFFO1lBQ0osSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQztZQUVqQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztZQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JDLENBQUMsRUFDRCxLQUFLLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDOytHQXBIVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiwrYUFFbEIsWUFBWSxnRENoQ3pCLHlwTkFrTUE7OzRGRHBLYSxrQkFBa0I7a0JBVDlCLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQU1iLHVCQUF1QixDQUFDLE1BQU07Z1BBR3pCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTztnQkFDSyxTQUFTO3NCQUFqQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIE9uSW5pdCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgaW5wdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhcEJwU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhcC1icC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYXBCcExpc3RNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9zYXAtYnAtbGlzdC5tb2RlbCc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3RTbmFja0JhclNlcnZpY2UgfSBmcm9tICduZ3gtc3Qtc25hY2stYmFyJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBTYXBCcFVzZXJTZXR0aW5ncyB9IGZyb20gJy4uL3NhcC1icC1iYXNlLWNyZWF0ZS1lZGl0JztcclxuaW1wb3J0IHsgU3REaWFsb2dUcmFuc2xhdGVkU2VydmljZSB9IGZyb20gJ25neC1zdC1kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICduZ3gtc3Qtc2FwLWJwLWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zYXAtYnAtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICAnLi9zYXAtYnAtbGlzdC5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi4vLi4vLi4vLi4vYXNzZXRzL2Jhc2UtY2FyZC5zY3NzJyxcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FwQnBMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3MgPSAnZGlzcGxheS1mbGV4LWNvbXBvbmVudCc7XHJcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xyXG5cclxuICBvbmx5VmlldyA9IGlucHV0KGZhbHNlKTtcclxuXHJcbiAgdXNlclNldHRpbmdzID0gaW5wdXQucmVxdWlyZWQ8U2FwQnBVc2VyU2V0dGluZ3M+KCk7XHJcblxyXG4gIGNvbHVtbnM6IHN0cmluZ1tdID0gW1xyXG4gICAgJ2FjdGl2ZUljb24nLFxyXG4gICAgJ2NhcmRDb2RlJyxcclxuICAgICdjYXJkTmFtZScsXHJcbiAgICAnY2FyZFR5cGUnLFxyXG4gICAgJ2FkZHJlc3NTaGlwVG8nLFxyXG4gICAgJ2luYWN0aXZlQ29tbWVudCcsXHJcbiAgICAnYWN0aW9ucycsXHJcbiAgXTtcclxuXHJcbiAgY29kZVNlYXJjaCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpO1xyXG4gIG5hbWVTZWFyY2ggPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKTtcclxuXHJcbiAgaXRlbXM6IFNhcEJwTGlzdE1vZGVsW10gPSBbXTtcclxuXHJcbiAgbWF4UmVzdWx0cyA9IDA7XHJcbiAgcGFnZUluZGV4ID0gMDtcclxuICBwYWdlU2l6ZSA9IDEwO1xyXG5cclxuICBzaG93TG9hZGVyID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzYXBCcFNlcnZpY2U6IFNhcEJwU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHNuYWNrOiBTdFNuYWNrQmFyU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgc3REaWFsb2dUcmFuc2xhdGVkU2VydmljZTogU3REaWFsb2dUcmFuc2xhdGVkU2VydmljZSxcclxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhZ2VTaXplID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3NhcC1icC1saXN0LXBhZ2Utc2l6ZScpO1xyXG4gICAgaWYgKHBhZ2VTaXplKSB7XHJcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwYXJzZUludChwYWdlU2l6ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMub25seVZpZXcoKSkge1xyXG4gICAgICB0aGlzLmNvbHVtbnMucG9wKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sb2FkSXRlbXMoMCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnBhZ2luYXRvci5wYWdlLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc2FwLWl0ZW0tbGlzdC1wYWdlLXNpemUnLCByZXMucGFnZVNpemUudG9TdHJpbmcoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNsZWFyQ29kZVNlYXJjaCgpIHtcclxuICAgIHRoaXMuY29kZVNlYXJjaC5zZXRWYWx1ZSgnJyk7XHJcbiAgICB0aGlzLmxvYWRJdGVtcygwKTtcclxuICB9XHJcblxyXG4gIGNsZWFyTmFtZVNlYXJjaCgpIHtcclxuICAgIHRoaXMubmFtZVNlYXJjaC5zZXRWYWx1ZSgnJyk7XHJcbiAgICB0aGlzLmxvYWRJdGVtcygwKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaCgpIHtcclxuICAgIHRoaXMubG9hZEl0ZW1zKDApO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlKGl0ZW06IFNhcEJwTGlzdE1vZGVsKSB7XHJcbiAgICB0aGlzLnN0RGlhbG9nVHJhbnNsYXRlZFNlcnZpY2VcclxuICAgICAgLnNob3dEZWxldGVXYXJuaW5nKClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLnNhcEJwU2VydmljZS5kZWxldGUoaXRlbS5jYXJkQ29kZSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgdGhpcy5zbmFjay5zdWNjZXNzKFxyXG4gICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3NhcEFkbWluSXRlbS5pdGVtRGVsZXRlZCcpXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmxvYWRJdGVtcyh0aGlzLnBhZ2VJbmRleCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcGFnZUNoYW5nZWQgPSAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5wYWdlU2l6ZSA9IGV2ZW50LnBhZ2VTaXplO1xyXG4gICAgdGhpcy5sb2FkSXRlbXMoZXZlbnQucGFnZUluZGV4KTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGxvYWRJdGVtcyhwYWdlTnVtYmVyOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2hvd0xvYWRlciA9IHRydWU7XHJcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG5cclxuICAgIHRoaXMuc2FwQnBTZXJ2aWNlXHJcbiAgICAgIC5nZXRMaXN0KFxyXG4gICAgICAgIHBhZ2VOdW1iZXIgKyAxLFxyXG4gICAgICAgIHRoaXMucGFnZVNpemUsXHJcbiAgICAgICAgdGhpcy5jb2RlU2VhcmNoLnZhbHVlLFxyXG4gICAgICAgIHRoaXMubmFtZVNlYXJjaC52YWx1ZVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgIHRoaXMuaXRlbXMgPSByZXMuZGF0YTtcclxuICAgICAgICAgIHRoaXMubWF4UmVzdWx0cyA9IHJlcy50b3RhbENvdW50O1xyXG5cclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQgdXNlcnMtbGlzdCBuby1jdXRcIj5cclxuICA8bmd4LXN0LWNhcmRcclxuICAgIFt0aXRsZV09XCInc2FwQWRtaW5CcC50aXRsZUJwTGlzdCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgW2NyZWF0ZUxpbmtdPVwiIW9ubHlWaWV3KCkgPyBbJ2NyZWF0ZSddIDogdW5kZWZpbmVkXCJcclxuICAgIFtjcmVhdGVMaW5rTGFiZWxdPVwiJ3NhcEFkbWluQnAudGl0bGVCcENyZWF0ZScgfCB0cmFuc2xhdGVcIlxyXG4gID5cclxuICAgIDxuZ3gtc3QtbG9hZGVyXHJcbiAgICAgIFtzaG93TG9hZGVyXT1cInNob3dMb2FkZXJcIlxyXG4gICAgICBbcG9zaXRpb25WYWxdPVwiJ2ZpeGVkJ1wiXHJcbiAgICA+PC9uZ3gtc3QtbG9hZGVyPlxyXG5cclxuICAgIDxmb3JtIGNsYXNzPVwic2VhcmNoLWZvcm0gcm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIChuZ1N1Ym1pdCk9XCJzZWFyY2goKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIGNvbC1tZCByb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnc2FwQWRtaW5CcC5hY2NvdW50Tm8nIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvZGVTZWFyY2hcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbGVhciBjb2wtYXV0b1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIChjbGljayk9XCJjbGVhckNvZGVTZWFyY2goKVwiPmNsZWFyPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTIgY29sLW1kIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdzYXBBZG1pbkJwLmFjY291bnROYW1lJyB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJuYW1lU2VhcmNoXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xlYXIgY29sLWF1dG9cIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiY2xlYXJOYW1lU2VhcmNoKClcIj5jbGVhcjwvbWF0LWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJjb2wtc20tNiBjb2wtbWQtYXV0b1wiXHJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cclxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgJ3NhcEFkbWluQnAuc2VhcmNoJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZm9ybT5cclxuXHJcbiAgICA8dGFibGUgY2xhc3M9XCJzdC1tYXRlcmlhbC10YWJsZVwiIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJpdGVtc1wiPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImFjdGl2ZUljb25cIj5cclxuICAgICAgICA8dGggY2xhc3M9XCJhY3RpdmUtaWNvbi1jZWxsXCIgbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPjwvdGg+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICBjbGFzcz1cImFjdGl2ZS1pY29uLWNlbGwganVzdGlmeS1jb250ZW50LXN0YXJ0XCJcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnZGV0YWlscycsIGVsZW1lbnQuY2FyZENvZGVdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICBAaWYgKGVsZW1lbnQuYWN0aXZlKSB7XHJcbiAgICAgICAgICAgIDxtYXQtaWNvblxyXG4gICAgICAgICAgICAgIHN0eWxlPVwib3BhY2l0eTogMC44XCJcclxuICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJlbGVtZW50LmluYWN0aXZlUmVhc29uIHx8ICdBY3RpdmUnXCJcclxuICAgICAgICAgICAgICA+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvblxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaWYgKCFlbGVtZW50LmFjdGl2ZSkge1xyXG4gICAgICAgICAgICA8bWF0LWljb24gc3R5bGU9XCJvcGFjaXR5OiAwLjhcIiBbbWF0VG9vbHRpcF09XCJlbGVtZW50LmluYWN0aXZlUmVhc29uXCJcclxuICAgICAgICAgICAgICA+dW5wdWJsaXNoZWQ8L21hdC1pY29uXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiY2FyZENvZGVcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPlxyXG4gICAgICAgICAge3sgJ3NhcEFkbWluQnAuYWNjb3VudE5vJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICBtYXQtY2VsbFxyXG4gICAgICAgICAgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiXHJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJbJ2RldGFpbHMnLCBlbGVtZW50LmNhcmRDb2RlXVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3sgZWxlbWVudC5jYXJkQ29kZSB9fVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjYXJkTmFtZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgICB7eyAnc2FwQWRtaW5CcC5hY2NvdW50TmFtZScgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3RoPlxyXG4gICAgICAgIDx0ZFxyXG4gICAgICAgICAgbWF0LWNlbGxcclxuICAgICAgICAgICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIlxyXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWydkZXRhaWxzJywgZWxlbWVudC5jYXJkQ29kZV1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7IGVsZW1lbnQuY2FyZE5hbWUgfX1cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiY2FyZFR5cGVcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPlxyXG4gICAgICAgICAge3sgJ3NhcEFkbWluQnAuYWNjb3VudFR5cGUnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnZGV0YWlscycsIGVsZW1lbnQuY2FyZENvZGVdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyAnc2FwQWRtaW5CcC5icFR5cGUnICsgZWxlbWVudC5jYXJkVHlwZSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhZGRyZXNzU2hpcFRvXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICAgIHt7ICdzYXBBZG1pbkJwLmRlZmF1bHRBZGRyZXNzU2hpcFRvJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICBtYXQtY2VsbFxyXG4gICAgICAgICAgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiXHJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJbJ2RldGFpbHMnLCBlbGVtZW50LmNhcmRDb2RlXVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3sgZWxlbWVudC5hZGRyZXNzU2hpcFRvIH19XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImluYWN0aXZlQ29tbWVudFwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgICB7eyAnc2FwQWRtaW5CcC5pbmFjdGl2ZUNvbW1lbnQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnZGV0YWlscycsIGVsZW1lbnQuY2FyZENvZGVdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBlbGVtZW50LmluYWN0aXZlQ29tbWVudCB9fVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25zXCI+XHJcbiAgICAgICAgPHRoIGNsYXNzPVwiYWN0aW9ucy1jZWxsXCIgbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPjwvdGg+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICBjbGFzcz1cImFjdGlvbnMtY2VsbCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCJcclxuICAgICAgICAgIG1hdC1jZWxsXHJcbiAgICAgICAgICAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICBAaWYgKFxyXG4gICAgICAgICAgICAodXNlclNldHRpbmdzKCkub3JhY2xlQnBFZGl0ICYmXHJcbiAgICAgICAgICAgICAgKCFlbGVtZW50LmZyb3plbiB8fFxyXG4gICAgICAgICAgICAgICAgKGVsZW1lbnQuZnJvemVuICYmIGVsZW1lbnQuY2FyZFR5cGUgPT09ICdDJykpKSB8fFxyXG4gICAgICAgICAgICAoIXVzZXJTZXR0aW5ncygpLm9yYWNsZUJwRWRpdCAmJlxyXG4gICAgICAgICAgICAgICghZWxlbWVudC5mcm96ZW4gfHwgKGVsZW1lbnQuZnJvemVuICYmIGVsZW1lbnQuY2FyZFR5cGUgPT09ICdDJykpKVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIlsnZWRpdCcsIGVsZW1lbnQuY2FyZENvZGVdXCI+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCInc2FwQWRtaW5CcC5lZGl0QnAnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24+ZWRpdDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpZiAoXHJcbiAgICAgICAgICAgICh1c2VyU2V0dGluZ3MoKS5vcmFjbGVCcEVkaXQgJiZcclxuICAgICAgICAgICAgICAoIWVsZW1lbnQuZnJvemVuIHx8XHJcbiAgICAgICAgICAgICAgICAoZWxlbWVudC5mcm96ZW4gJiYgZWxlbWVudC5jYXJkVHlwZSA9PT0gJ0MnKSkpIHx8XHJcbiAgICAgICAgICAgICghdXNlclNldHRpbmdzKCkub3JhY2xlQnBFZGl0ICYmXHJcbiAgICAgICAgICAgICAgKCFlbGVtZW50LmZyb3plbiB8fCAoZWxlbWVudC5mcm96ZW4gJiYgZWxlbWVudC5jYXJkVHlwZSA9PT0gJ0MnKSkpXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidzYXBBZG1pbkJwLmRlbGV0ZUJwJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZShlbGVtZW50KVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGlmIChlbGVtZW50LmZyb3plbiAmJiBlbGVtZW50LmNhcmRUeXBlID09PSAnTCcpIHtcclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnZlcnRpbmctdGV4dFwiPlxyXG4gICAgICAgICAgICAgIHt7ICdzYXBBZG1pbkJwLmNvbnZlcnRpbmcnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zXCI+PC90cj5cclxuICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGNvbHVtbnNcIj48L3RyPlxyXG4gICAgPC90YWJsZT5cclxuICAgIDxtYXQtcGFnaW5hdG9yXHJcbiAgICAgIFtwYWdlSW5kZXhdPVwicGFnZUluZGV4XCJcclxuICAgICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuICAgICAgW2xlbmd0aF09XCJtYXhSZXN1bHRzXCJcclxuICAgICAgW3BhZ2VTaXplT3B0aW9uc109XCJbMTAsIDE1LCAyMF1cIlxyXG4gICAgICAocGFnZSk9XCJwYWdlQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgID48L21hdC1wYWdpbmF0b3I+XHJcbiAgPC9uZ3gtc3QtY2FyZD5cclxuPC9kaXY+XHJcbiJdfQ==