@unifylib/ui-lib 1.0.69 → 1.0.70

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.
@@ -80,7 +80,7 @@ export class ActionCommentComponent {
80
80
  this.dialogRef.close();
81
81
  }
82
82
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCommentComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ActionCommentComponent, isStandalone: true, selector: "app-action-comment", host: { listeners: { "window:keyup.esc": "onKeyUp()" } }, ngImport: i0, template: "<div class=\"dialog-container\" [dir]=\"currentDirection\">\r\n\r\n <div class=\"desktop-view\">\r\n <h2 mat-dialog-title class=\"dialog-title\">\r\n {{ titleKey | translate}} {{itemName}}\r\n </h2>\r\n\r\n <p class=\"dialog-subtitle\">\r\n {{ subtitleKey | translate }}\r\n </p>\r\n\r\n <mat-dialog-content class=\"content-section\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else textMode\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? (item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"w-100\">\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #textMode>\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-label>{{ reasonLabelKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box\">\r\n <mat-icon>info</mat-icon>\r\n <span class=\"info-text\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\" class=\"footer-actions\">\r\n <button mat-stroked-button class=\"btn-none-background-primary cancel-btn\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n\r\n <button\r\n mat-flat-button\r\n class=\"btn-background-primary warn-btn\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </mat-dialog-actions>\r\n </div>\r\n\r\n <div class=\"mobile-view\">\r\n <div class=\"modal-header\">\r\n <div class=\"handle\"></div>\r\n <div class=\"header-content\">\r\n <p class=\"modal-title\">{{ titleKey | translate }}</p>\r\n <button class=\"close-button\" (click)=\"cancel()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else mobileText\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n class=\"textarea-mobile\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? ( item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"textarea-field-mobile\">\r\n <mat-label>{{ placeholderKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #mobileText>\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box-mobile\">\r\n <mat-icon class=\"info-icon-mobile\">info</mat-icon>\r\n <span class=\"info-text-mobile\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"modal-actions-mobile\">\r\n <div class=\"actions-buttons-container\">\r\n <button mat-stroked-button class=\"btn-cancel-mobile\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n class=\"btn-action-mobile\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </div>\r\n <div class=\"home-indicator\"></div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".dialog-container{position:relative}.desktop-view{display:block}.mobile-view{display:none}.dialog-title{font-size:20px;font-weight:600;padding:0 16px}.dialog-subtitle{color:#666;padding:0 20px}.textarea-label{font-weight:600;padding:5px 20px;margin:0;color:#000}.info-text{color:#888;font-family:Lusail,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:120%}.info-box{display:flex;font-size:12px}.info-box mat-icon{font-size:18px;color:var(--primary-color-3nd)}.footer-actions{margin-top:0}.cancel-btn{width:121px!important}.warn-btn{width:171px!important}.content-section{padding:0 20px}.mobile-view{display:flex;flex-direction:column;gap:8px;background:#fff;padding:16px 24px;min-height:356px;box-sizing:border-box}.modal-header{display:flex;flex-direction:column;gap:8px;width:100%}.handle{width:36px;height:4px;background:#b7b7b7;border-radius:2px;margin:0 auto;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative}.modal-title{font-family:Lusail,sans-serif;font-weight:500;font-size:14px;line-height:1.2;color:#161616;text-align:center;position:absolute;left:50%;transform:translate(-50%);margin:0;width:200px}.close-button{background:#f0eeee;border:none;border-radius:9999px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:8px;margin-left:auto;flex-shrink:0}.close-button mat-icon{font-size:20px;width:20px;height:20px;color:#000;overflow:visible}.close-button:hover{background:#e0e0e0}.modal-body{display:flex;flex-direction:column;gap:8px;width:100%;flex:1;min-height:0}.textarea-label-mobile{font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#000;height:24px;max-height:24px;margin:0;padding:0}.textarea-field-mobile{width:100%;margin:0!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-infix{min-height:107px;padding:16px!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-outline{border:1px solid #b7b7b7!important;border-radius:8px!important}:host ::ng-deep .textarea-field-mobile textarea{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1.2;color:#888;resize:both}:host ::ng-deep .textarea-field-mobile textarea::placeholder{color:#888;font-weight:300;font-size:16px;line-height:1.2}.info-box-mobile{display:flex;gap:8px;align-items:flex-end;width:100%}.info-box-mobile .info-icon-mobile{font-size:18px;width:18px;height:20px;color:#b54708;flex-shrink:0;margin-top:2px}.info-box-mobile .info-text-mobile{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1;color:#5c5c5c;flex:1}.modal-actions-mobile{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;min-height:68px;position:relative}.actions-buttons-container{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;margin-bottom:0;flex-shrink:0}.modal-actions-mobile>.actions-buttons-container>button{margin:0!important}.btn-cancel-mobile{width:160px!important;height:44px!important;border:1px solid #3e627b!important;border-radius:8px!important;background:#fff!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#0d4261!important}.btn-action-mobile{flex:1 1 0!important;min-width:0!important;height:44px!important;border-radius:8px!important;background:#0d4261!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#fff!important}.home-indicator{width:134px;height:5px;background:#161616;border-radius:100px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media (max-width: 768px){.desktop-view{display:none!important}.mobile-view{display:flex!important}}:host ::ng-deep .mat-mdc-dialog-container{padding:0!important}@media (max-width: 768px){:host ::ng-deep .mat-mdc-dialog-container{max-width:100vw!important;width:100vw!important;margin:0!important;position:fixed!important;inset:auto 0 0!important;border-radius:0!important;max-height:90vh!important}:host ::ng-deep .cdk-overlay-backdrop{background-color:#00000080!important}}@media (min-width: 769px){.desktop-view{display:block!important}.mobile-view{display:none!important}}@media (max-width: 600px){::ng-deep cdk-global-overlay-wrapper{align-items:flex-end!important}}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
83
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ActionCommentComponent, isStandalone: true, selector: "app-action-comment", host: { listeners: { "window:keyup.esc": "onKeyUp()" } }, ngImport: i0, template: "<div class=\"dialog-container\" [dir]=\"currentDirection\">\r\n\r\n <div class=\"desktop-view\">\r\n <h2 mat-dialog-title class=\"dialog-title\">\r\n {{ titleKey | translate}} {{itemName}}\r\n </h2>\r\n\r\n <p class=\"dialog-subtitle\">\r\n {{ subtitleKey | translate }}\r\n </p>\r\n\r\n <mat-dialog-content class=\"content-section\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else textMode\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? (item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"w-100\">\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #textMode>\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-label>{{ reasonLabelKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box\">\r\n <mat-icon>info</mat-icon>\r\n <span class=\"info-text\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\" class=\"footer-actions\">\r\n <button mat-stroked-button class=\"btn-none-background-primary cancel-btn\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n\r\n <button\r\n mat-flat-button\r\n class=\"btn-background-primary warn-btn\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </mat-dialog-actions>\r\n </div>\r\n\r\n <div class=\"mobile-view\">\r\n <div class=\"modal-header\">\r\n <div class=\"handle\"></div>\r\n <div class=\"header-content\">\r\n <p class=\"modal-title\">{{ titleKey | translate }}</p>\r\n <button class=\"close-button\" (click)=\"cancel()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else mobileText\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n class=\"textarea-mobile\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? ( item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"textarea-field-mobile\">\r\n <mat-label>{{ placeholderKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #mobileText>\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box-mobile\">\r\n <mat-icon class=\"info-icon-mobile\">info</mat-icon>\r\n <span class=\"info-text-mobile\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"modal-actions-mobile\">\r\n <div class=\"actions-buttons-container\">\r\n <button mat-stroked-button class=\"btn-cancel-mobile\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n class=\"btn-action-mobile\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </div>\r\n <div class=\"home-indicator\"></div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".dialog-container{position:relative}.desktop-view{display:block}.mobile-view{display:none}.dialog-title{font-size:20px;font-weight:600;padding:0 16px}.dialog-subtitle{color:#666;padding:0 20px}.textarea-label{font-weight:600;padding:5px 20px;margin:0;color:#000}.info-text{color:#888;font-family:Lusail,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:120%}.info-box{display:flex;font-size:12px}.info-box mat-icon{font-size:18px;color:var(--primary-color-3nd)}.footer-actions{margin-top:0}.cancel-btn{width:121px!important}.warn-btn{width:171px!important}.content-section{padding:0 20px}.mobile-view{display:flex;flex-direction:column;gap:8px;background:#fff;padding:16px 24px;min-height:356px;box-sizing:border-box}.modal-header{display:flex;flex-direction:column;gap:8px;width:100%}.handle{width:36px;height:4px;background:#b7b7b7;border-radius:2px;margin:0 auto;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative}.modal-title{font-family:Lusail,sans-serif;font-weight:500;font-size:14px;line-height:1.2;color:#161616;text-align:center;position:absolute;left:50%;transform:translate(-50%);margin:0;width:200px}.close-button{background:#f0eeee;border:none;border-radius:9999px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:8px;margin-left:auto;flex-shrink:0}.close-button mat-icon{font-size:20px;width:20px;height:20px;color:#000;overflow:visible}.close-button:hover{background:#e0e0e0}.modal-body{display:flex;flex-direction:column;gap:8px;width:100%;flex:1;min-height:0}.textarea-label-mobile{font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#000;height:24px;max-height:24px;margin:0;padding:0}.textarea-field-mobile{width:100%;margin:0!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-infix{min-height:107px;padding:16px!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-outline{border:1px solid #b7b7b7!important;border-radius:8px!important}:host ::ng-deep .textarea-field-mobile textarea{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1.2;color:#888;resize:both}:host ::ng-deep .textarea-field-mobile textarea::placeholder{color:#888;font-weight:300;font-size:16px;line-height:1.2}.info-box-mobile{display:flex;gap:8px;align-items:flex-end;width:100%}.info-box-mobile .info-icon-mobile{font-size:18px;width:18px;height:20px;color:#b54708;flex-shrink:0;margin-top:2px}.info-box-mobile .info-text-mobile{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1;color:#5c5c5c;flex:1}.modal-actions-mobile{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;min-height:68px;position:relative}.actions-buttons-container{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;margin-bottom:0;flex-shrink:0}.modal-actions-mobile>.actions-buttons-container>button{margin:0!important}.btn-cancel-mobile{flex:.5!important;height:44px!important;border:1px solid #3e627b!important;border-radius:8px!important;background:#fff!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#0d4261!important}.btn-action-mobile{flex:1 1 0!important;min-width:0!important;height:44px!important;border-radius:8px!important;background:#0d4261!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#fff!important}.home-indicator{width:134px;height:5px;background:#161616;border-radius:100px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media (max-width: 768px){.desktop-view{display:none!important}.mobile-view{display:flex!important}}:host ::ng-deep .mat-mdc-dialog-container{padding:0!important}@media (max-width: 768px){:host ::ng-deep .mat-mdc-dialog-container{max-width:100vw!important;width:100vw!important;margin:0!important;position:fixed!important;inset:auto 0 0!important;border-radius:0!important;max-height:90vh!important}:host ::ng-deep .cdk-overlay-backdrop{background-color:#00000080!important}}@media (min-width: 769px){.desktop-view{display:block!important}.mobile-view{display:none!important}}@media (max-width: 600px){::ng-deep cdk-global-overlay-wrapper{align-items:flex-end!important}}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
84
84
  }
85
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCommentComponent, decorators: [{
86
86
  type: Component,
@@ -100,7 +100,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
100
100
  MatSelect,
101
101
  NgForOf,
102
102
  NgIf
103
- ], template: "<div class=\"dialog-container\" [dir]=\"currentDirection\">\r\n\r\n <div class=\"desktop-view\">\r\n <h2 mat-dialog-title class=\"dialog-title\">\r\n {{ titleKey | translate}} {{itemName}}\r\n </h2>\r\n\r\n <p class=\"dialog-subtitle\">\r\n {{ subtitleKey | translate }}\r\n </p>\r\n\r\n <mat-dialog-content class=\"content-section\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else textMode\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? (item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"w-100\">\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #textMode>\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-label>{{ reasonLabelKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box\">\r\n <mat-icon>info</mat-icon>\r\n <span class=\"info-text\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\" class=\"footer-actions\">\r\n <button mat-stroked-button class=\"btn-none-background-primary cancel-btn\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n\r\n <button\r\n mat-flat-button\r\n class=\"btn-background-primary warn-btn\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </mat-dialog-actions>\r\n </div>\r\n\r\n <div class=\"mobile-view\">\r\n <div class=\"modal-header\">\r\n <div class=\"handle\"></div>\r\n <div class=\"header-content\">\r\n <p class=\"modal-title\">{{ titleKey | translate }}</p>\r\n <button class=\"close-button\" (click)=\"cancel()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else mobileText\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n class=\"textarea-mobile\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? ( item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"textarea-field-mobile\">\r\n <mat-label>{{ placeholderKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #mobileText>\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box-mobile\">\r\n <mat-icon class=\"info-icon-mobile\">info</mat-icon>\r\n <span class=\"info-text-mobile\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"modal-actions-mobile\">\r\n <div class=\"actions-buttons-container\">\r\n <button mat-stroked-button class=\"btn-cancel-mobile\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n class=\"btn-action-mobile\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </div>\r\n <div class=\"home-indicator\"></div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".dialog-container{position:relative}.desktop-view{display:block}.mobile-view{display:none}.dialog-title{font-size:20px;font-weight:600;padding:0 16px}.dialog-subtitle{color:#666;padding:0 20px}.textarea-label{font-weight:600;padding:5px 20px;margin:0;color:#000}.info-text{color:#888;font-family:Lusail,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:120%}.info-box{display:flex;font-size:12px}.info-box mat-icon{font-size:18px;color:var(--primary-color-3nd)}.footer-actions{margin-top:0}.cancel-btn{width:121px!important}.warn-btn{width:171px!important}.content-section{padding:0 20px}.mobile-view{display:flex;flex-direction:column;gap:8px;background:#fff;padding:16px 24px;min-height:356px;box-sizing:border-box}.modal-header{display:flex;flex-direction:column;gap:8px;width:100%}.handle{width:36px;height:4px;background:#b7b7b7;border-radius:2px;margin:0 auto;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative}.modal-title{font-family:Lusail,sans-serif;font-weight:500;font-size:14px;line-height:1.2;color:#161616;text-align:center;position:absolute;left:50%;transform:translate(-50%);margin:0;width:200px}.close-button{background:#f0eeee;border:none;border-radius:9999px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:8px;margin-left:auto;flex-shrink:0}.close-button mat-icon{font-size:20px;width:20px;height:20px;color:#000;overflow:visible}.close-button:hover{background:#e0e0e0}.modal-body{display:flex;flex-direction:column;gap:8px;width:100%;flex:1;min-height:0}.textarea-label-mobile{font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#000;height:24px;max-height:24px;margin:0;padding:0}.textarea-field-mobile{width:100%;margin:0!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-infix{min-height:107px;padding:16px!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-outline{border:1px solid #b7b7b7!important;border-radius:8px!important}:host ::ng-deep .textarea-field-mobile textarea{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1.2;color:#888;resize:both}:host ::ng-deep .textarea-field-mobile textarea::placeholder{color:#888;font-weight:300;font-size:16px;line-height:1.2}.info-box-mobile{display:flex;gap:8px;align-items:flex-end;width:100%}.info-box-mobile .info-icon-mobile{font-size:18px;width:18px;height:20px;color:#b54708;flex-shrink:0;margin-top:2px}.info-box-mobile .info-text-mobile{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1;color:#5c5c5c;flex:1}.modal-actions-mobile{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;min-height:68px;position:relative}.actions-buttons-container{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;margin-bottom:0;flex-shrink:0}.modal-actions-mobile>.actions-buttons-container>button{margin:0!important}.btn-cancel-mobile{width:160px!important;height:44px!important;border:1px solid #3e627b!important;border-radius:8px!important;background:#fff!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#0d4261!important}.btn-action-mobile{flex:1 1 0!important;min-width:0!important;height:44px!important;border-radius:8px!important;background:#0d4261!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#fff!important}.home-indicator{width:134px;height:5px;background:#161616;border-radius:100px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media (max-width: 768px){.desktop-view{display:none!important}.mobile-view{display:flex!important}}:host ::ng-deep .mat-mdc-dialog-container{padding:0!important}@media (max-width: 768px){:host ::ng-deep .mat-mdc-dialog-container{max-width:100vw!important;width:100vw!important;margin:0!important;position:fixed!important;inset:auto 0 0!important;border-radius:0!important;max-height:90vh!important}:host ::ng-deep .cdk-overlay-backdrop{background-color:#00000080!important}}@media (min-width: 769px){.desktop-view{display:block!important}.mobile-view{display:none!important}}@media (max-width: 600px){::ng-deep cdk-global-overlay-wrapper{align-items:flex-end!important}}\n"] }]
103
+ ], template: "<div class=\"dialog-container\" [dir]=\"currentDirection\">\r\n\r\n <div class=\"desktop-view\">\r\n <h2 mat-dialog-title class=\"dialog-title\">\r\n {{ titleKey | translate}} {{itemName}}\r\n </h2>\r\n\r\n <p class=\"dialog-subtitle\">\r\n {{ subtitleKey | translate }}\r\n </p>\r\n\r\n <mat-dialog-content class=\"content-section\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else textMode\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? (item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"w-100\">\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #textMode>\r\n <mat-form-field appearance=\"outline\" class=\"w-100\">\r\n <mat-label>{{ reasonLabelKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n maxlength=\"1000\"\r\n cdkAutosizeMaxRows=\"5\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box\">\r\n <mat-icon>info</mat-icon>\r\n <span class=\"info-text\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\" class=\"footer-actions\">\r\n <button mat-stroked-button class=\"btn-none-background-primary cancel-btn\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n\r\n <button\r\n mat-flat-button\r\n class=\"btn-background-primary warn-btn\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </mat-dialog-actions>\r\n </div>\r\n\r\n <div class=\"mobile-view\">\r\n <div class=\"modal-header\">\r\n <div class=\"handle\"></div>\r\n <div class=\"header-content\">\r\n <p class=\"modal-title\">{{ titleKey | translate }}</p>\r\n <button class=\"close-button\" (click)=\"cancel()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n\r\n <ng-container *ngIf=\"data?.options?.length; else mobileText\">\r\n\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-select\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n class=\"textarea-mobile\">\r\n\r\n <mat-option *ngFor=\"let item of data.options\" [value]=\"item\">\r\n {{ data.translate ? ( item | translate) : item }}\r\n </mat-option>\r\n\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field\r\n *ngIf=\"comment === 'OTHER'\"\r\n appearance=\"outline\"\r\n class=\"textarea-field-mobile\">\r\n <mat-label>{{ placeholderKey | translate }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"otherComment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n\r\n </ng-container>\r\n\r\n <ng-template #mobileText>\r\n <mat-form-field appearance=\"outline\" class=\"textarea-field-mobile\">\r\n <mat-label>{{ reasonLabelKey | translate }} {{ itemName }}</mat-label>\r\n <textarea\r\n matInput\r\n [(ngModel)]=\"comment\"\r\n [placeholder]=\"placeholderKey | translate\"\r\n cdkTextareaAutosize\r\n cdkAutosizeMinRows=\"4\"\r\n cdkAutosizeMaxRows=\"5\"\r\n maxlength=\"1000\"\r\n class=\"textarea-mobile\">\r\n </textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <div class=\"info-box-mobile\">\r\n <mat-icon class=\"info-icon-mobile\">info</mat-icon>\r\n <span class=\"info-text-mobile\">\r\n {{ warningKey | translate }}\r\n </span>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"modal-actions-mobile\">\r\n <div class=\"actions-buttons-container\">\r\n <button mat-stroked-button class=\"btn-cancel-mobile\" (click)=\"cancel()\">\r\n {{ cancelKey | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n class=\"btn-action-mobile\"\r\n (click)=\"commentAndClose()\"\r\n [disabled]=\"!comment || (comment === 'OTHER' && !otherComment)\">\r\n {{ actionKey | translate }}\r\n </button>\r\n </div>\r\n <div class=\"home-indicator\"></div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".dialog-container{position:relative}.desktop-view{display:block}.mobile-view{display:none}.dialog-title{font-size:20px;font-weight:600;padding:0 16px}.dialog-subtitle{color:#666;padding:0 20px}.textarea-label{font-weight:600;padding:5px 20px;margin:0;color:#000}.info-text{color:#888;font-family:Lusail,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:120%}.info-box{display:flex;font-size:12px}.info-box mat-icon{font-size:18px;color:var(--primary-color-3nd)}.footer-actions{margin-top:0}.cancel-btn{width:121px!important}.warn-btn{width:171px!important}.content-section{padding:0 20px}.mobile-view{display:flex;flex-direction:column;gap:8px;background:#fff;padding:16px 24px;min-height:356px;box-sizing:border-box}.modal-header{display:flex;flex-direction:column;gap:8px;width:100%}.handle{width:36px;height:4px;background:#b7b7b7;border-radius:2px;margin:0 auto;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative}.modal-title{font-family:Lusail,sans-serif;font-weight:500;font-size:14px;line-height:1.2;color:#161616;text-align:center;position:absolute;left:50%;transform:translate(-50%);margin:0;width:200px}.close-button{background:#f0eeee;border:none;border-radius:9999px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:8px;margin-left:auto;flex-shrink:0}.close-button mat-icon{font-size:20px;width:20px;height:20px;color:#000;overflow:visible}.close-button:hover{background:#e0e0e0}.modal-body{display:flex;flex-direction:column;gap:8px;width:100%;flex:1;min-height:0}.textarea-label-mobile{font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#000;height:24px;max-height:24px;margin:0;padding:0}.textarea-field-mobile{width:100%;margin:0!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-infix{min-height:107px;padding:16px!important}:host ::ng-deep .textarea-field-mobile .mat-mdc-form-field-outline{border:1px solid #b7b7b7!important;border-radius:8px!important}:host ::ng-deep .textarea-field-mobile textarea{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1.2;color:#888;resize:both}:host ::ng-deep .textarea-field-mobile textarea::placeholder{color:#888;font-weight:300;font-size:16px;line-height:1.2}.info-box-mobile{display:flex;gap:8px;align-items:flex-end;width:100%}.info-box-mobile .info-icon-mobile{font-size:18px;width:18px;height:20px;color:#b54708;flex-shrink:0;margin-top:2px}.info-box-mobile .info-text-mobile{font-family:Lusail,sans-serif;font-weight:300;font-size:16px;line-height:1;color:#5c5c5c;flex:1}.modal-actions-mobile{display:flex;flex-direction:column;gap:0;align-items:center;justify-content:center;width:100%;min-height:68px;position:relative}.actions-buttons-container{display:flex;gap:8px;align-items:center;justify-content:center;width:100%;margin-bottom:0;flex-shrink:0}.modal-actions-mobile>.actions-buttons-container>button{margin:0!important}.btn-cancel-mobile{flex:.5!important;height:44px!important;border:1px solid #3e627b!important;border-radius:8px!important;background:#fff!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#0d4261!important}.btn-action-mobile{flex:1 1 0!important;min-width:0!important;height:44px!important;border-radius:8px!important;background:#0d4261!important;font-family:Lusail,sans-serif;font-weight:500;font-size:16px;line-height:1.2;color:#fff!important}.home-indicator{width:134px;height:5px;background:#161616;border-radius:100px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@media (max-width: 768px){.desktop-view{display:none!important}.mobile-view{display:flex!important}}:host ::ng-deep .mat-mdc-dialog-container{padding:0!important}@media (max-width: 768px){:host ::ng-deep .mat-mdc-dialog-container{max-width:100vw!important;width:100vw!important;margin:0!important;position:fixed!important;inset:auto 0 0!important;border-radius:0!important;max-height:90vh!important}:host ::ng-deep .cdk-overlay-backdrop{background-color:#00000080!important}}@media (min-width: 769px){.desktop-view{display:block!important}.mobile-view{display:none!important}}@media (max-width: 600px){::ng-deep cdk-global-overlay-wrapper{align-items:flex-end!important}}\n"] }]
104
104
  }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
105
105
  type: Inject,
106
106
  args: [MAT_DIALOG_DATA]
@@ -108,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
108
108
  type: HostListener,
109
109
  args: ['window:keyup.esc']
110
110
  }] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWNvbW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52b2ljZXEvdWktbGliL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24tY29tbWVudC9hY3Rpb24tY29tbWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2FjdGlvbi1jb21tZW50L2FjdGlvbi1jb21tZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQ0wsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFFaEIsY0FBYyxFQUNmLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1B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d0JBQ1QsT0FBTzt3QkFDUCxJQUFJO3FCQUNMOzswQkEyQlksTUFBTTsyQkFBQyxlQUFlO3dFQUlELE9BQU87c0JBQXhDLFlBQVk7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgTUFUX0RJQUxPR19EQVRBLFxyXG4gIE1hdERpYWxvZ0FjdGlvbnMsXHJcbiAgTWF0RGlhbG9nQ29udGVudCxcclxuICBNYXREaWFsb2dSZWYsXHJcbiAgTWF0RGlhbG9nVGl0bGVcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdExhYmVsIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDZGtUZXh0YXJlYUF1dG9zaXplIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RleHQtZmllbGQnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdE9wdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3QgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBOZ0Zvck9mLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWFjdGlvbi1jb21tZW50JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE1hdERpYWxvZ1RpdGxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkLFxyXG4gICAgTWF0TGFiZWwsXHJcbiAgICBNYXREaWFsb2dDb250ZW50LFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDZGtUZXh0YXJlYUF1dG9zaXplLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdElucHV0LFxyXG4gICAgTWF0SWNvbixcclxuICAgIE1hdE9wdGlvbixcclxuICAgIE1hdFNlbGVjdCxcclxuICAgIE5nRm9yT2YsXHJcbiAgICBOZ0lmXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uLWNvbW1lbnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9hY3Rpb24tY29tbWVudC5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uQ29tbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaXRlbU5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIHRpdGxlS2V5OiBzdHJpbmcgPSAnJztcclxuICBzdWJ0aXRsZUtleTogc3RyaW5nID0gJyc7XHJcbiAgcmVhc29uTGFiZWxLZXk6IHN0cmluZyA9ICcnO1xyXG4gIHBsYWNlaG9sZGVyS2V5OiBzdHJpbmcgPSAnJztcclxuICB3YXJuaW5nS2V5OiBzdHJpbmcgPSAnJztcclxuICBjYW5jZWxLZXk6IHN0cmluZyA9ICcnO1xyXG4gIGFjdGlvbktleTogc3RyaW5nID0gJyc7XHJcbiAgY3VycmVudERpcmVjdGlvbjogJ2x0cicgfCAncnRsJyA9ICdsdHInO1xyXG5cclxuICBhY3Rpb25MYWJlbCA6IHN0cmluZyA9JydcclxuICBpc1Rlcm1pbmF0aW9uIDogYm9vbGVhbj1mYWxzZTtcclxuICBjb21tZW50OiBzdHJpbmcgPSAnJztcclxuICBvdGhlckNvbW1lbnQ6IHN0cmluZyA9ICcnO1xyXG4gIGV4dGVybmFsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2lnbmluZ1JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdG9rZW5SZWZlcmVuY2U6IHN0cmluZyA9IFwiXCI7XHJcbiAgb3RwOiBzdHJpbmcgPSBcIlwiO1xyXG4gIGlzU3VibWl0dGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgd2FybmluZ01zZyA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QWN0aW9uQ29tbWVudENvbXBvbmVudD4sXHJcbiAgICAgICAgICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXHJcbiAgICAgICAgICAgICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xyXG4gICAgZGlhbG9nUmVmLmRpc2FibGVDbG9zZSA9IHRydWU7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5lc2MnKSBvbktleVVwKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFjdGlvbkxhYmVsID0gdGhpcy5kYXRhLmxhYmVsO1xyXG4gICAgdGhpcy5pc1Rlcm1pbmF0aW9uID0gdGhpcy5kYXRhLmlzVGVybWluYXRpb24gO1xyXG4gICAgdGhpcy5zaWduaW5nUmVxdWlyZWQgPSB0aGlzLmRhdGEuc2lnbmluZ1JlcXVpcmVkO1xyXG4gICAgdGhpcy50b2tlblJlZmVyZW5jZSA9IHRoaXMuZGF0YS50b2tlblJlZmVyZW5jZTtcclxuICAgIHRoaXMud2FybmluZ01zZyA9IHRoaXMuZGF0YS53YXJuaW5nTXNnIHx8IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuaXRlbU5hbWUgPSB0aGlzLmRhdGEuaXRlbU5hbWU7XHJcbiAgICB0aGlzLnRpdGxlS2V5ID0gdGhpcy5kYXRhLnRpdGxlS2V5O1xyXG4gICAgdGhpcy5zdWJ0aXRsZUtleSA9IHRoaXMuZGF0YS5zdWJ0aXRsZUtleTtcclxuICAgIHRoaXMucmVhc29uTGFiZWxLZXkgPSB0aGlzLmRhdGEucmVhc29uTGFiZWxLZXk7XHJcbiAgICB0aGlzLnBsYWNlaG9sZGVyS2V5ID0gdGhpcy5kYXRhLnBsYWNlaG9sZGVyS2V5O1xyXG4gICAgdGhpcy53YXJuaW5nS2V5ID0gdGhpcy5kYXRhLndhcm5pbmdLZXk7XHJcbiAgICB0aGlzLmNhbmNlbEtleSA9IHRoaXMuZGF0YS5jYW5jZWxLZXk7XHJcbiAgICB0aGlzLmFjdGlvbktleSA9IHRoaXMuZGF0YS5hY3Rpb25LZXk7XHJcbiAgICB0aGlzLmN1cnJlbnREaXJlY3Rpb24gID0gdGhpcy5kYXRhLmRpcmVjdGlvbjtcclxuICB9XHJcblxyXG5cclxuICBjb21tZW50QW5kQ2xvc2UoKSB7XHJcbiAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5zaWduaW5nUmVxdWlyZWQgJiYgIXRoaXMub3RwKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBmaW5hbENvbW1lbnQgPVxyXG4gICAgICB0aGlzLmNvbW1lbnQgPT09ICdPVEhFUicgPyB0aGlzLm90aGVyQ29tbWVudCA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodGhpcy5jb21tZW50KTtcclxuXHJcbiAgICBjb25zdCBvYmo6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7XHJcbiAgICAgIGNvbW1lbnQ6IGZpbmFsQ29tbWVudCxcclxuICAgICAgc2hhcmVFeHRlcm5hbDogdGhpcy5leHRlcm5hbFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5zaWduaW5nUmVxdWlyZWQpIHtcclxuICAgICAgb2JqWyd0b2tlbiddID0gdGhpcy5vdHA7XHJcbiAgICAgIG9ialsndG9rZW5SZWZlcmVuY2UnXSA9IHRoaXMudG9rZW5SZWZlcmVuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uob2JqKTtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGFpbmVyXCIgW2Rpcl09XCJjdXJyZW50RGlyZWN0aW9uXCI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJkZXNrdG9wLXZpZXdcIj5cclxuICAgIDxoMiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwiZGlhbG9nLXRpdGxlXCI+XHJcbiAgICAgIHt7IHRpdGxlS2V5IHwgdHJhbnNsYXRlfX0ge3tpdGVtTmFtZX19XHJcbiAgICA8L2gyPlxyXG5cclxuICAgIDxwIGNsYXNzPVwiZGlhbG9nLXN1YnRpdGxlXCI+XHJcbiAgICAgIHt7IHN1YnRpdGxlS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L3A+XHJcblxyXG4gICAgPG1hdC1kaWFsb2ctY29udGVudCBjbGFzcz1cImNvbnRlbnQtc2VjdGlvblwiPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGE/Lm9wdGlvbnM/Lmxlbmd0aDsgZWxzZSB0ZXh0TW9kZVwiPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICAgICAgICA8bWF0LXNlbGVjdFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbW1lbnRcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJLZXkgfCB0cmFuc2xhdGVcIj5cclxuXHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGEub3B0aW9uc1wiIFt2YWx1ZV09XCJpdGVtXCI+XHJcbiAgICAgICAgICAgICAge3sgZGF0YS50cmFuc2xhdGUgPyAoaXRlbSB8IHRyYW5zbGF0ZSkgOiBpdGVtIH19XHJcbiAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuXHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAqbmdJZj1cImNvbW1lbnQgPT09ICdPVEhFUidcIlxyXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJ3LTEwMFwiPlxyXG4gICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwib3RoZXJDb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjVcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLXRlbXBsYXRlICN0ZXh0TW9kZT5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IHJlYXNvbkxhYmVsS2V5IHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjVcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbmZvLWJveFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj5pbmZvPC9tYXQtaWNvbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImluZm8tdGV4dFwiPlxyXG4gICAgICAgICAge3sgd2FybmluZ0tleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblxyXG4gICAgPG1hdC1kaWFsb2ctYWN0aW9ucyBhbGlnbj1cImVuZFwiIGNsYXNzPVwiZm9vdGVyLWFjdGlvbnNcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJidG4tbm9uZS1iYWNrZ3JvdW5kLXByaW1hcnkgY2FuY2VsLWJ0blwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICAgIHt7IGNhbmNlbEtleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtZmxhdC1idXR0b25cclxuICAgICAgICBjbGFzcz1cImJ0bi1iYWNrZ3JvdW5kLXByaW1hcnkgd2Fybi1idG5cIlxyXG4gICAgICAgIChjbGljayk9XCJjb21tZW50QW5kQ2xvc2UoKVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFjb21tZW50IHx8IChjb21tZW50ID09PSAnT1RIRVInICYmICFvdGhlckNvbW1lbnQpXCI+XHJcbiAgICAgICAge3sgYWN0aW9uS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtb2JpbGUtdmlld1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaGFuZGxlXCI+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItY29udGVudFwiPlxyXG4gICAgICAgIDxwIGNsYXNzPVwibW9kYWwtdGl0bGVcIj57eyB0aXRsZUtleSB8IHRyYW5zbGF0ZSB9fTwvcD5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YT8ub3B0aW9ucz8ubGVuZ3RoOyBlbHNlIG1vYmlsZVRleHRcIj5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ0ZXh0YXJlYS1maWVsZC1tb2JpbGVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgcmVhc29uTGFiZWxLZXkgfCB0cmFuc2xhdGUgfX0ge3sgaXRlbU5hbWUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29tbWVudFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dGFyZWEtbW9iaWxlXCI+XHJcblxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhLm9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbVwiPlxyXG4gICAgICAgICAgICAgIHt7IGRhdGEudHJhbnNsYXRlID8gKCBpdGVtIHwgdHJhbnNsYXRlKSA6IGl0ZW0gfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG5cclxuICAgICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGRcclxuICAgICAgICAgICpuZ0lmPVwiY29tbWVudCA9PT0gJ09USEVSJ1wiXHJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgICAgICAgICBjbGFzcz1cInRleHRhcmVhLWZpZWxkLW1vYmlsZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBwbGFjZWhvbGRlcktleSB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwib3RoZXJDb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgY2RrQXV0b3NpemVNYXhSb3dzPVwiNVwiXHJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjEwMDBcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInRleHRhcmVhLW1vYmlsZVwiPlxyXG4gICAgICAgICAgPC90ZXh0YXJlYT5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctdGVtcGxhdGUgI21vYmlsZVRleHQ+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ0ZXh0YXJlYS1maWVsZC1tb2JpbGVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgcmVhc29uTGFiZWxLZXkgfCB0cmFuc2xhdGUgfX0ge3sgaXRlbU5hbWUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbW1lbnRcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJLZXkgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBjZGtUZXh0YXJlYUF1dG9zaXplXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWluUm93cz1cIjRcIlxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1heFJvd3M9XCI1XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dGFyZWEtbW9iaWxlXCI+XHJcbiAgICAgICAgICA8L3RleHRhcmVhPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5mby1ib3gtbW9iaWxlXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaW5mby1pY29uLW1vYmlsZVwiPmluZm88L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mby10ZXh0LW1vYmlsZVwiPlxyXG4gICAgICAgICAge3sgd2FybmluZ0tleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWFjdGlvbnMtbW9iaWxlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zLWJ1dHRvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJidG4tY2FuY2VsLW1vYmlsZVwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICAgICAge3sgY2FuY2VsS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICBjbGFzcz1cImJ0bi1hY3Rpb24tbW9iaWxlXCJcclxuICAgICAgICAgIChjbGljayk9XCJjb21tZW50QW5kQ2xvc2UoKVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWNvbW1lbnQgfHwgKGNvbW1lbnQgPT09ICdPVEhFUicgJiYgIW90aGVyQ29tbWVudClcIj5cclxuICAgICAgICAgIHt7IGFjdGlvbktleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImhvbWUtaW5kaWNhdG9yXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWNvbW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW52b2ljZXEvdWktbGliL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24tY29tbWVudC9hY3Rpb24tY29tbWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnZvaWNlcS91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2FjdGlvbi1jb21tZW50L2FjdGlvbi1jb21tZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQ0wsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFFaEIsY0FBYyxFQUNmLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGVBQWUsRUFBbUIsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1B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d0JBQ1QsT0FBTzt3QkFDUCxJQUFJO3FCQUNMOzswQkEyQlksTUFBTTsyQkFBQyxlQUFlO3dFQUlELE9BQU87c0JBQXhDLFlBQVk7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgTUFUX0RJQUxPR19EQVRBLFxyXG4gIE1hdERpYWxvZ0FjdGlvbnMsXHJcbiAgTWF0RGlhbG9nQ29udGVudCxcclxuICBNYXREaWFsb2dSZWYsXHJcbiAgTWF0RGlhbG9nVGl0bGVcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGQsIE1hdExhYmVsIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDZGtUZXh0YXJlYUF1dG9zaXplIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RleHQtZmllbGQnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdE9wdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3QgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBOZ0Zvck9mLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWFjdGlvbi1jb21tZW50JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE1hdERpYWxvZ1RpdGxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkLFxyXG4gICAgTWF0TGFiZWwsXHJcbiAgICBNYXREaWFsb2dDb250ZW50LFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDZGtUZXh0YXJlYUF1dG9zaXplLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdElucHV0LFxyXG4gICAgTWF0SWNvbixcclxuICAgIE1hdE9wdGlvbixcclxuICAgIE1hdFNlbGVjdCxcclxuICAgIE5nRm9yT2YsXHJcbiAgICBOZ0lmXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uLWNvbW1lbnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9hY3Rpb24tY29tbWVudC5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uQ29tbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaXRlbU5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIHRpdGxlS2V5OiBzdHJpbmcgPSAnJztcclxuICBzdWJ0aXRsZUtleTogc3RyaW5nID0gJyc7XHJcbiAgcmVhc29uTGFiZWxLZXk6IHN0cmluZyA9ICcnO1xyXG4gIHBsYWNlaG9sZGVyS2V5OiBzdHJpbmcgPSAnJztcclxuICB3YXJuaW5nS2V5OiBzdHJpbmcgPSAnJztcclxuICBjYW5jZWxLZXk6IHN0cmluZyA9ICcnO1xyXG4gIGFjdGlvbktleTogc3RyaW5nID0gJyc7XHJcbiAgY3VycmVudERpcmVjdGlvbjogJ2x0cicgfCAncnRsJyA9ICdsdHInO1xyXG5cclxuICBhY3Rpb25MYWJlbCA6IHN0cmluZyA9JydcclxuICBpc1Rlcm1pbmF0aW9uIDogYm9vbGVhbj1mYWxzZTtcclxuICBjb21tZW50OiBzdHJpbmcgPSAnJztcclxuICBvdGhlckNvbW1lbnQ6IHN0cmluZyA9ICcnO1xyXG4gIGV4dGVybmFsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2lnbmluZ1JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdG9rZW5SZWZlcmVuY2U6IHN0cmluZyA9IFwiXCI7XHJcbiAgb3RwOiBzdHJpbmcgPSBcIlwiO1xyXG4gIGlzU3VibWl0dGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgd2FybmluZ01zZyA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QWN0aW9uQ29tbWVudENvbXBvbmVudD4sXHJcbiAgICAgICAgICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXHJcbiAgICAgICAgICAgICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xyXG4gICAgZGlhbG9nUmVmLmRpc2FibGVDbG9zZSA9IHRydWU7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5lc2MnKSBvbktleVVwKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFjdGlvbkxhYmVsID0gdGhpcy5kYXRhLmxhYmVsO1xyXG4gICAgdGhpcy5pc1Rlcm1pbmF0aW9uID0gdGhpcy5kYXRhLmlzVGVybWluYXRpb24gO1xyXG4gICAgdGhpcy5zaWduaW5nUmVxdWlyZWQgPSB0aGlzLmRhdGEuc2lnbmluZ1JlcXVpcmVkO1xyXG4gICAgdGhpcy50b2tlblJlZmVyZW5jZSA9IHRoaXMuZGF0YS50b2tlblJlZmVyZW5jZTtcclxuICAgIHRoaXMud2FybmluZ01zZyA9IHRoaXMuZGF0YS53YXJuaW5nTXNnIHx8IGZhbHNlO1xyXG5cclxuICAgIHRoaXMuaXRlbU5hbWUgPSB0aGlzLmRhdGEuaXRlbU5hbWU7XHJcbiAgICB0aGlzLnRpdGxlS2V5ID0gdGhpcy5kYXRhLnRpdGxlS2V5O1xyXG4gICAgdGhpcy5zdWJ0aXRsZUtleSA9IHRoaXMuZGF0YS5zdWJ0aXRsZUtleTtcclxuICAgIHRoaXMucmVhc29uTGFiZWxLZXkgPSB0aGlzLmRhdGEucmVhc29uTGFiZWxLZXk7XHJcbiAgICB0aGlzLnBsYWNlaG9sZGVyS2V5ID0gdGhpcy5kYXRhLnBsYWNlaG9sZGVyS2V5O1xyXG4gICAgdGhpcy53YXJuaW5nS2V5ID0gdGhpcy5kYXRhLndhcm5pbmdLZXk7XHJcbiAgICB0aGlzLmNhbmNlbEtleSA9IHRoaXMuZGF0YS5jYW5jZWxLZXk7XHJcbiAgICB0aGlzLmFjdGlvbktleSA9IHRoaXMuZGF0YS5hY3Rpb25LZXk7XHJcbiAgICB0aGlzLmN1cnJlbnREaXJlY3Rpb24gID0gdGhpcy5kYXRhLmRpcmVjdGlvbjtcclxuICB9XHJcblxyXG5cclxuICBjb21tZW50QW5kQ2xvc2UoKSB7XHJcbiAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5zaWduaW5nUmVxdWlyZWQgJiYgIXRoaXMub3RwKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBmaW5hbENvbW1lbnQgPVxyXG4gICAgICB0aGlzLmNvbW1lbnQgPT09ICdPVEhFUicgPyB0aGlzLm90aGVyQ29tbWVudCA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodGhpcy5jb21tZW50KTtcclxuXHJcbiAgICBjb25zdCBvYmo6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7XHJcbiAgICAgIGNvbW1lbnQ6IGZpbmFsQ29tbWVudCxcclxuICAgICAgc2hhcmVFeHRlcm5hbDogdGhpcy5leHRlcm5hbFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5zaWduaW5nUmVxdWlyZWQpIHtcclxuICAgICAgb2JqWyd0b2tlbiddID0gdGhpcy5vdHA7XHJcbiAgICAgIG9ialsndG9rZW5SZWZlcmVuY2UnXSA9IHRoaXMudG9rZW5SZWZlcmVuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uob2JqKTtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGFpbmVyXCIgW2Rpcl09XCJjdXJyZW50RGlyZWN0aW9uXCI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJkZXNrdG9wLXZpZXdcIj5cclxuICAgIDxoMiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwiZGlhbG9nLXRpdGxlXCI+XHJcbiAgICAgIHt7IHRpdGxlS2V5IHwgdHJhbnNsYXRlfX0ge3tpdGVtTmFtZX19XHJcbiAgICA8L2gyPlxyXG5cclxuICAgIDxwIGNsYXNzPVwiZGlhbG9nLXN1YnRpdGxlXCI+XHJcbiAgICAgIHt7IHN1YnRpdGxlS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L3A+XHJcblxyXG4gICAgPG1hdC1kaWFsb2ctY29udGVudCBjbGFzcz1cImNvbnRlbnQtc2VjdGlvblwiPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGE/Lm9wdGlvbnM/Lmxlbmd0aDsgZWxzZSB0ZXh0TW9kZVwiPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICAgICAgICA8bWF0LXNlbGVjdFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbW1lbnRcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJLZXkgfCB0cmFuc2xhdGVcIj5cclxuXHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGEub3B0aW9uc1wiIFt2YWx1ZV09XCJpdGVtXCI+XHJcbiAgICAgICAgICAgICAge3sgZGF0YS50cmFuc2xhdGUgPyAoaXRlbSB8IHRyYW5zbGF0ZSkgOiBpdGVtIH19XHJcbiAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuXHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAqbmdJZj1cImNvbW1lbnQgPT09ICdPVEhFUidcIlxyXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJ3LTEwMFwiPlxyXG4gICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwib3RoZXJDb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjVcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLXRlbXBsYXRlICN0ZXh0TW9kZT5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IHJlYXNvbkxhYmVsS2V5IHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjVcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbmZvLWJveFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj5pbmZvPC9tYXQtaWNvbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImluZm8tdGV4dFwiPlxyXG4gICAgICAgICAge3sgd2FybmluZ0tleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblxyXG4gICAgPG1hdC1kaWFsb2ctYWN0aW9ucyBhbGlnbj1cImVuZFwiIGNsYXNzPVwiZm9vdGVyLWFjdGlvbnNcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJidG4tbm9uZS1iYWNrZ3JvdW5kLXByaW1hcnkgY2FuY2VsLWJ0blwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICAgIHt7IGNhbmNlbEtleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtZmxhdC1idXR0b25cclxuICAgICAgICBjbGFzcz1cImJ0bi1iYWNrZ3JvdW5kLXByaW1hcnkgd2Fybi1idG5cIlxyXG4gICAgICAgIChjbGljayk9XCJjb21tZW50QW5kQ2xvc2UoKVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFjb21tZW50IHx8IChjb21tZW50ID09PSAnT1RIRVInICYmICFvdGhlckNvbW1lbnQpXCI+XHJcbiAgICAgICAge3sgYWN0aW9uS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtb2JpbGUtdmlld1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaGFuZGxlXCI+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItY29udGVudFwiPlxyXG4gICAgICAgIDxwIGNsYXNzPVwibW9kYWwtdGl0bGVcIj57eyB0aXRsZUtleSB8IHRyYW5zbGF0ZSB9fTwvcD5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YT8ub3B0aW9ucz8ubGVuZ3RoOyBlbHNlIG1vYmlsZVRleHRcIj5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ0ZXh0YXJlYS1maWVsZC1tb2JpbGVcIj5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY29tbWVudFwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcktleSB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dGFyZWEtbW9iaWxlXCI+XHJcblxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhLm9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbVwiPlxyXG4gICAgICAgICAgICAgIHt7IGRhdGEudHJhbnNsYXRlID8gKCBpdGVtIHwgdHJhbnNsYXRlKSA6IGl0ZW0gfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG5cclxuICAgICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGRcclxuICAgICAgICAgICpuZ0lmPVwiY29tbWVudCA9PT0gJ09USEVSJ1wiXHJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgICAgICAgICBjbGFzcz1cInRleHRhcmVhLWZpZWxkLW1vYmlsZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBwbGFjZWhvbGRlcktleSB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwib3RoZXJDb21tZW50XCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyS2V5IHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcclxuICAgICAgICAgICAgY2RrQXV0b3NpemVNYXhSb3dzPVwiNVwiXHJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjEwMDBcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInRleHRhcmVhLW1vYmlsZVwiPlxyXG4gICAgICAgICAgPC90ZXh0YXJlYT5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctdGVtcGxhdGUgI21vYmlsZVRleHQ+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ0ZXh0YXJlYS1maWVsZC1tb2JpbGVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgcmVhc29uTGFiZWxLZXkgfCB0cmFuc2xhdGUgfX0ge3sgaXRlbU5hbWUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbW1lbnRcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJLZXkgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBjZGtUZXh0YXJlYUF1dG9zaXplXHJcbiAgICAgICAgICAgIGNka0F1dG9zaXplTWluUm93cz1cIjRcIlxyXG4gICAgICAgICAgICBjZGtBdXRvc2l6ZU1heFJvd3M9XCI1XCJcclxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMTAwMFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dGFyZWEtbW9iaWxlXCI+XHJcbiAgICAgICAgICA8L3RleHRhcmVhPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5mby1ib3gtbW9iaWxlXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaW5mby1pY29uLW1vYmlsZVwiPmluZm88L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaW5mby10ZXh0LW1vYmlsZVwiPlxyXG4gICAgICAgICAge3sgd2FybmluZ0tleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWFjdGlvbnMtbW9iaWxlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zLWJ1dHRvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY2xhc3M9XCJidG4tY2FuY2VsLW1vYmlsZVwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICAgICAge3sgY2FuY2VsS2V5IHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgICBjbGFzcz1cImJ0bi1hY3Rpb24tbW9iaWxlXCJcclxuICAgICAgICAgIChjbGljayk9XCJjb21tZW50QW5kQ2xvc2UoKVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWNvbW1lbnQgfHwgKGNvbW1lbnQgPT09ICdPVEhFUicgJiYgIW90aGVyQ29tbWVudClcIj5cclxuICAgICAgICAgIHt7IGFjdGlvbktleSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImhvbWUtaW5kaWNhdG9yXCI+PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=