@asoftwareworld/form-builder-pro
Version:
ASW Form Builder Pro helps you with rapid development and designed web forms which includes several controls. The key feature of Form Builder is to make your content attractive and effective. We can customize our control at run time and preview the same b
81 lines • 44.9 kB
JavaScript
/**
* @license
* Copyright ASW (A Software World) All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file
*/
import { Component, Inject } from '@angular/core';
import { Validators } from '@angular/forms';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import { Constants, Icons } from '@asoftwareworld/form-builder-pro/common';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
import * as i2 from "@angular/material/dialog";
import * as i3 from "@angular/common";
import * as i4 from "@angular/material/core";
import * as i5 from "@angular/material/button";
import * as i6 from "@angular/material/button-toggle";
import * as i7 from "@angular/material/input";
import * as i8 from "@angular/material/form-field";
import * as i9 from "@angular/material/select";
import * as i10 from "@angular/material/tooltip";
import * as i11 from "@asoftwareworld/form-builder-pro/common";
import * as i12 from "@asoftwareworld/form-builder-pro/core";
export class AswHeaderDialog {
formBuilder;
dialogRef;
data;
constants = Constants;
icons = Icons;
aswHeaderForm;
control;
constructor(formBuilder, dialogRef, data) {
this.formBuilder = formBuilder;
this.dialogRef = dialogRef;
this.data = data;
}
ngOnInit() {
this.control = this.data.control;
this.validateFormBuilder();
this.editProperty(this.control);
}
validateFormBuilder() {
this.aswHeaderForm = this.formBuilder.group({
customClass: [],
label: ['', [Validators.required, Validators.minLength(2)]],
subtype: [],
style: []
});
}
editProperty(control) {
this.aswHeaderForm.setValue({
customClass: control.customClass ?? '',
label: control.label,
subtype: control.subtype,
style: control.style
});
}
onNoClick() {
this.dialogRef.close();
}
onSubmit() {
if (this.aswHeaderForm.invalid) {
return;
}
this.aswHeaderForm.value.controlType = this.control.controlType;
this.aswHeaderForm.value.id = this.control.id;
this.aswHeaderForm.value.guid = this.control.guid;
this.dialogRef.close(this.aswHeaderForm.value);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AswHeaderDialog, deps: [{ token: i1.FormBuilder }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AswHeaderDialog, selector: "asw-header-dialog", ngImport: i0, template: "<div class=\"asw-dialog-header\">\r\n <div class=\"asw-edit-row-dialog\">\r\n <div class=\"asw-dialog-header clearfix\">\r\n <div class=\"asw-dialog-about\">\r\n <h1 mat-dialog-title class=\"asw-m-0\">{{'FormControl.Edit' | aswTranslate}} {{control.label | aswTranslate}}</h1>\r\n </div>\r\n </div>\r\n </div>\r\n <button mat-icon-button (click)=\"onNoClick()\" aria-label=\"Close dialog\" class=\"asw-mt-2 asw-me-2\">\r\n <div [innerHTML]=\"icons.close | aswSafeHtml\"></div>\r\n </button>\r\n</div>\r\n<form [formGroup]=\"aswHeaderForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-dialog-content class=\"mat-typography\">\r\n <div class=\"asw-row\">\r\n <ng-container *ngIf=\"data.CSSFramework === 'material'; else bootstrap\">\r\n <div class=\"asw-col-md-12\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.Label' | aswTranslate}}</mat-label>\r\n <input matInput type=\"text\"\r\n name=\"label\"\r\n placeholder=\"{{'FormControl.Label' | aswTranslate}}\"\r\n matTooltip=\"{{'FormControl.Label' | aswTranslate}}\"\r\n formControlName=\"label\" required>\r\n <mat-error *ngFor=\"let validation of constants.accountValidationMessages.label\">\r\n <ng-container *ngIf=\"aswHeaderForm.get('label')?.hasError(validation.type) && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)\">\r\n {{validation.message | aswTranslate}}\r\n </ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <ng-container *ngIf=\"!data.propertyPersonalization.includes('customCSSClass')\">\r\n <div class=\"asw-col-md-6\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.CustomCSSClass' | aswTranslate}}</mat-label>\r\n <input matInput type=\"text\"\r\n name=\"customClass\"\r\n placeholder=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n matTooltip=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n formControlName=\"customClass\">\r\n </mat-form-field>\r\n </div>\r\n </ng-container>\r\n <div class=\"{{!data.propertyPersonalization.includes('customCSSClass') ? 'asw-col-md-6' : 'asw-col-md-12'}}\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.Type' | aswTranslate}}</mat-label>\r\n <mat-select formControlName=\"subtype\">\r\n <mat-option value=\"h1\">H1</mat-option>\r\n <mat-option value=\"h2\">H2</mat-option>\r\n <mat-option value=\"h3\">H3</mat-option>\r\n <mat-option value=\"h4\">H4</mat-option>\r\n <mat-option value=\"h5\">H5</mat-option>\r\n <mat-option value=\"h6\">H6</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"asw-col-md-6\">\r\n <h6 class=\"asw-fs-6 asw-my-2\">{{'FormControl.Style' | aswTranslate}}:</h6>\r\n <mat-button-toggle-group formControlName=\"style\" name=\"fontStyle\" aria-label=\"Font Style\">\r\n <mat-button-toggle value=\"asw-text-start\" aria-label=\"Text align left\">\r\n <span [innerHTML]=\"icons.justifyLeft | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-center\" aria-label=\"Text align center\">\r\n <span [innerHTML]=\"icons.justifyCenter | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-end\" aria-label=\"Text align right\">\r\n <span [innerHTML]=\"icons.justifyRight | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </ng-container>\r\n <ng-template #bootstrap>\r\n <div class=\"asw-col-md-12\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label asw-invalid-label {{(aswHeaderForm.get('label')?.invalid && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)) ? 'asw-red-color' : ''}}\">{{'FormControl.Label' | aswTranslate}}</label>\r\n <input type=\"text\"\r\n name=\"label\"\r\n class=\"asw-input-control\"\r\n [class.asw-is-invalid]=\"(aswHeaderForm.get('label')?.invalid && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched))\"\r\n matTooltip=\"{{'FormControl.Label' | aswTranslate}}\"\r\n formControlName=\"label\" required>\r\n <div *ngFor=\"let validation of constants.accountValidationMessages.label\" class=\"invalid-feedback\">\r\n <ng-container *ngIf=\"aswHeaderForm.get('label')?.hasError(validation.type) && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)\">\r\n {{validation.message | aswTranslate}}\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!data.propertyPersonalization.includes('customCSSClass')\">\r\n <div class=\"asw-col-md-6\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label\">{{'FormControl.CustomCSSClass' | aswTranslate}}</label>\r\n <input type=\"text\"\r\n name=\"customClass\"\r\n class=\"asw-input-control\"\r\n matTooltip=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n formControlName=\"customClass\">\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"{{!data.propertyPersonalization.includes('customCSSClass') ? 'asw-col-md-6' : 'asw-col-md-12'}}\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label\">{{'FormControl.Type' | aswTranslate}}</label>\r\n <select formControlName=\"subtype\" class=\"asw-select\">\r\n <option value=\"h1\">H1</option>\r\n <option value=\"h2\">H2</option>\r\n <option value=\"h3\">H3</option>\r\n <option value=\"h4\">H4</option>\r\n <option value=\"h5\">H5</option>\r\n <option value=\"h6\">H6</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"asw-col-md-6\">\r\n <h6 class=\"asw-fs-6 asw-my-2\">{{'FormControl.Style' | aswTranslate}}:</h6>\r\n <mat-button-toggle-group formControlName=\"style\" name=\"fontStyle\" aria-label=\"Font Style\">\r\n <mat-button-toggle value=\"asw-text-start\" aria-label=\"Text align left\">\r\n <span [innerHTML]=\"icons.justifyLeft | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-center\" aria-label=\"Text align center\">\r\n <span [innerHTML]=\"icons.justifyCenter | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-end\" aria-label=\"Text align right\">\r\n <span [innerHTML]=\"icons.justifyRight | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions align=\"end\">\r\n <button type=\"button\"\r\n class=\"asw-button asw-button-danger asw-mb-1 asw-me-2\"\r\n (click)=\"onNoClick()\">\r\n {{'FormControl.No' | aswTranslate}}\r\n </button>\r\n <button type=\"submit\"\r\n class=\"asw-button asw-button-primary asw-mb-1\"\r\n cdkFocusInitial>\r\n {{'FormControl.Yes' | aswTranslate}}\r\n </button>\r\n </mat-dialog-actions>\r\n</form>\r\n\r\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.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: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i6.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i7.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: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i9.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: i10.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i11.AswSafeHtmlPipe, name: "aswSafeHtml" }, { kind: "pipe", type: i12.AswTranslatePipe, name: "aswTranslate" }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AswHeaderDialog, decorators: [{
type: Component,
args: [{ selector: 'asw-header-dialog', template: "<div class=\"asw-dialog-header\">\r\n <div class=\"asw-edit-row-dialog\">\r\n <div class=\"asw-dialog-header clearfix\">\r\n <div class=\"asw-dialog-about\">\r\n <h1 mat-dialog-title class=\"asw-m-0\">{{'FormControl.Edit' | aswTranslate}} {{control.label | aswTranslate}}</h1>\r\n </div>\r\n </div>\r\n </div>\r\n <button mat-icon-button (click)=\"onNoClick()\" aria-label=\"Close dialog\" class=\"asw-mt-2 asw-me-2\">\r\n <div [innerHTML]=\"icons.close | aswSafeHtml\"></div>\r\n </button>\r\n</div>\r\n<form [formGroup]=\"aswHeaderForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-dialog-content class=\"mat-typography\">\r\n <div class=\"asw-row\">\r\n <ng-container *ngIf=\"data.CSSFramework === 'material'; else bootstrap\">\r\n <div class=\"asw-col-md-12\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.Label' | aswTranslate}}</mat-label>\r\n <input matInput type=\"text\"\r\n name=\"label\"\r\n placeholder=\"{{'FormControl.Label' | aswTranslate}}\"\r\n matTooltip=\"{{'FormControl.Label' | aswTranslate}}\"\r\n formControlName=\"label\" required>\r\n <mat-error *ngFor=\"let validation of constants.accountValidationMessages.label\">\r\n <ng-container *ngIf=\"aswHeaderForm.get('label')?.hasError(validation.type) && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)\">\r\n {{validation.message | aswTranslate}}\r\n </ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <ng-container *ngIf=\"!data.propertyPersonalization.includes('customCSSClass')\">\r\n <div class=\"asw-col-md-6\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.CustomCSSClass' | aswTranslate}}</mat-label>\r\n <input matInput type=\"text\"\r\n name=\"customClass\"\r\n placeholder=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n matTooltip=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n formControlName=\"customClass\">\r\n </mat-form-field>\r\n </div>\r\n </ng-container>\r\n <div class=\"{{!data.propertyPersonalization.includes('customCSSClass') ? 'asw-col-md-6' : 'asw-col-md-12'}}\">\r\n <mat-form-field appearance=\"outline\" class=\"asw-width-100\">\r\n <mat-label>{{'FormControl.Type' | aswTranslate}}</mat-label>\r\n <mat-select formControlName=\"subtype\">\r\n <mat-option value=\"h1\">H1</mat-option>\r\n <mat-option value=\"h2\">H2</mat-option>\r\n <mat-option value=\"h3\">H3</mat-option>\r\n <mat-option value=\"h4\">H4</mat-option>\r\n <mat-option value=\"h5\">H5</mat-option>\r\n <mat-option value=\"h6\">H6</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"asw-col-md-6\">\r\n <h6 class=\"asw-fs-6 asw-my-2\">{{'FormControl.Style' | aswTranslate}}:</h6>\r\n <mat-button-toggle-group formControlName=\"style\" name=\"fontStyle\" aria-label=\"Font Style\">\r\n <mat-button-toggle value=\"asw-text-start\" aria-label=\"Text align left\">\r\n <span [innerHTML]=\"icons.justifyLeft | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-center\" aria-label=\"Text align center\">\r\n <span [innerHTML]=\"icons.justifyCenter | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-end\" aria-label=\"Text align right\">\r\n <span [innerHTML]=\"icons.justifyRight | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </ng-container>\r\n <ng-template #bootstrap>\r\n <div class=\"asw-col-md-12\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label asw-invalid-label {{(aswHeaderForm.get('label')?.invalid && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)) ? 'asw-red-color' : ''}}\">{{'FormControl.Label' | aswTranslate}}</label>\r\n <input type=\"text\"\r\n name=\"label\"\r\n class=\"asw-input-control\"\r\n [class.asw-is-invalid]=\"(aswHeaderForm.get('label')?.invalid && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched))\"\r\n matTooltip=\"{{'FormControl.Label' | aswTranslate}}\"\r\n formControlName=\"label\" required>\r\n <div *ngFor=\"let validation of constants.accountValidationMessages.label\" class=\"invalid-feedback\">\r\n <ng-container *ngIf=\"aswHeaderForm.get('label')?.hasError(validation.type) && (aswHeaderForm.get('label')?.dirty || aswHeaderForm.get('label')?.touched)\">\r\n {{validation.message | aswTranslate}}\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!data.propertyPersonalization.includes('customCSSClass')\">\r\n <div class=\"asw-col-md-6\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label\">{{'FormControl.CustomCSSClass' | aswTranslate}}</label>\r\n <input type=\"text\"\r\n name=\"customClass\"\r\n class=\"asw-input-control\"\r\n matTooltip=\"{{'FormControl.CustomCSSClass' | aswTranslate}}\"\r\n formControlName=\"customClass\">\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"{{!data.propertyPersonalization.includes('customCSSClass') ? 'asw-col-md-6' : 'asw-col-md-12'}}\">\r\n <div class=\"asw-mb-3\">\r\n <label class=\"asw-input-label\">{{'FormControl.Type' | aswTranslate}}</label>\r\n <select formControlName=\"subtype\" class=\"asw-select\">\r\n <option value=\"h1\">H1</option>\r\n <option value=\"h2\">H2</option>\r\n <option value=\"h3\">H3</option>\r\n <option value=\"h4\">H4</option>\r\n <option value=\"h5\">H5</option>\r\n <option value=\"h6\">H6</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"asw-col-md-6\">\r\n <h6 class=\"asw-fs-6 asw-my-2\">{{'FormControl.Style' | aswTranslate}}:</h6>\r\n <mat-button-toggle-group formControlName=\"style\" name=\"fontStyle\" aria-label=\"Font Style\">\r\n <mat-button-toggle value=\"asw-text-start\" aria-label=\"Text align left\">\r\n <span [innerHTML]=\"icons.justifyLeft | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-center\" aria-label=\"Text align center\">\r\n <span [innerHTML]=\"icons.justifyCenter | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"asw-text-end\" aria-label=\"Text align right\">\r\n <span [innerHTML]=\"icons.justifyRight | aswSafeHtml\"></span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions align=\"end\">\r\n <button type=\"button\"\r\n class=\"asw-button asw-button-danger asw-mb-1 asw-me-2\"\r\n (click)=\"onNoClick()\">\r\n {{'FormControl.No' | aswTranslate}}\r\n </button>\r\n <button type=\"submit\"\r\n class=\"asw-button asw-button-primary asw-mb-1\"\r\n cdkFocusInitial>\r\n {{'FormControl.Yes' | aswTranslate}}\r\n </button>\r\n </mat-dialog-actions>\r\n</form>\r\n\r\n" }]
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
type: Inject,
args: [MAT_DIALOG_DATA]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWRpYWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Zvcm0tY29udHJvbC9oZWFkZXIvaGVhZGVyLWRpYWxvZy50cyIsIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Zvcm0tY29udHJvbC9oZWFkZXIvaGVhZGVyLWRpYWxvZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU8zRSxNQUFNLE9BQU8sZUFBZTtJQU1aO0lBQ0Q7SUFDeUI7SUFQcEMsU0FBUyxHQUFRLFNBQVMsQ0FBQztJQUMzQixLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ2QsYUFBYSxDQUFhO0lBQzFCLE9BQU8sQ0FBaUI7SUFDeEIsWUFDWSxXQUF3QixFQUN6QixTQUF3QyxFQUNmLElBQVM7UUFGakMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsY0FBUyxHQUFULFNBQVMsQ0FBK0I7UUFDZixTQUFJLEdBQUosSUFBSSxDQUFLO0lBQzFDLENBQUM7SUFFSixRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNqQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUN4QyxXQUFXLEVBQUUsRUFBRTtZQUNmLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNELE9BQU8sRUFBRSxFQUFFO1lBQ1gsS0FBSyxFQUFFLEVBQUU7U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQXNCO1FBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1lBQ3hCLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUU7WUFDdEMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO1lBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7U0FDdkIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuRCxDQUFDO3VHQS9DUSxlQUFlLHlFQVFaLGVBQWU7MkZBUmxCLGVBQWUseURDbEI1Qixzd1NBZ0pBOzsyRkQ5SGEsZUFBZTtrQkFKM0IsU0FBUzsrQkFDSSxtQkFBbUI7OzBCQVd4QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgQVNXIChBIFNvZnR3YXJlIFdvcmxkKSBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IENvbnN0YW50cywgSWNvbnMgfSBmcm9tICdAYXNvZnR3YXJld29ybGQvZm9ybS1idWlsZGVyLXByby9jb21tb24nO1xuaW1wb3J0IHsgSGVhZGVyQ29udHJvbCB9IGZyb20gJy4vaGVhZGVyLWNvbnRyb2wnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Fzdy1oZWFkZXItZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLWRpYWxvZy5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBc3dIZWFkZXJEaWFsb2cgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0YW50czogYW55ID0gQ29uc3RhbnRzO1xuICAgIGljb25zID0gSWNvbnM7XG4gICAgYXN3SGVhZGVyRm9ybSE6IEZvcm1Hcm91cDtcbiAgICBjb250cm9sITogSGVhZGVyQ29udHJvbDtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxBc3dIZWFkZXJEaWFsb2c+LFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueVxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wgPSB0aGlzLmRhdGEuY29udHJvbDtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUZvcm1CdWlsZGVyKCk7XG4gICAgICAgIHRoaXMuZWRpdFByb3BlcnR5KHRoaXMuY29udHJvbCk7XG4gICAgfVxuXG4gICAgdmFsaWRhdGVGb3JtQnVpbGRlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hc3dIZWFkZXJGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgICAgICBjdXN0b21DbGFzczogW10sXG4gICAgICAgICAgICBsYWJlbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoMildXSxcbiAgICAgICAgICAgIHN1YnR5cGU6IFtdLFxuICAgICAgICAgICAgc3R5bGU6IFtdXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGVkaXRQcm9wZXJ0eShjb250cm9sOiBIZWFkZXJDb250cm9sKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYXN3SGVhZGVyRm9ybS5zZXRWYWx1ZSh7XG4gICAgICAgICAgICBjdXN0b21DbGFzczogY29udHJvbC5jdXN0b21DbGFzcyA/PyAnJyxcbiAgICAgICAgICAgIGxhYmVsOiBjb250cm9sLmxhYmVsLFxuICAgICAgICAgICAgc3VidHlwZTogY29udHJvbC5zdWJ0eXBlLFxuICAgICAgICAgICAgc3R5bGU6IGNvbnRyb2wuc3R5bGVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Ob0NsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgIH1cblxuICAgIG9uU3VibWl0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5hc3dIZWFkZXJGb3JtLmludmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFzd0hlYWRlckZvcm0udmFsdWUuY29udHJvbFR5cGUgPSB0aGlzLmNvbnRyb2wuY29udHJvbFR5cGU7XG4gICAgICAgIHRoaXMuYXN3SGVhZGVyRm9ybS52YWx1ZS5pZCA9IHRoaXMuY29udHJvbC5pZDtcbiAgICAgICAgdGhpcy5hc3dIZWFkZXJGb3JtLnZhbHVlLmd1aWQgPSB0aGlzLmNvbnRyb2wuZ3VpZDtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5hc3dIZWFkZXJGb3JtLnZhbHVlKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXN3LWRpYWxvZy1oZWFkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhc3ctZWRpdC1yb3ctZGlhbG9nXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFzdy1kaWFsb2ctaGVhZGVyIGNsZWFyZml4XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhc3ctZGlhbG9nLWFib3V0XCI+XHJcbiAgICAgICAgICAgICAgICA8aDEgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cImFzdy1tLTBcIj57eydGb3JtQ29udHJvbC5FZGl0JyB8IGFzd1RyYW5zbGF0ZX19IHt7Y29udHJvbC5sYWJlbCB8IGFzd1RyYW5zbGF0ZX19PC9oMT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvbk5vQ2xpY2soKVwiIGFyaWEtbGFiZWw9XCJDbG9zZSBkaWFsb2dcIiBjbGFzcz1cImFzdy1tdC0yIGFzdy1tZS0yXCI+XHJcbiAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImljb25zLmNsb3NlIHwgYXN3U2FmZUh0bWxcIj48L2Rpdj5cclxuICAgIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJhc3dIZWFkZXJGb3JtXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cclxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhc3ctcm93XCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhLkNTU0ZyYW1ld29yayA9PT0gJ21hdGVyaWFsJzsgZWxzZSBib290c3RyYXBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhc3ctY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJhc3ctd2lkdGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+e3snRm9ybUNvbnRyb2wuTGFiZWwnIHwgYXN3VHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJsYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7J0Zvcm1Db250cm9sLkxhYmVsJyB8IGFzd1RyYW5zbGF0ZX19XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eydGb3JtQ29udHJvbC5MYWJlbCcgfCBhc3dUcmFuc2xhdGV9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJsYWJlbFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0Zvcj1cImxldCB2YWxpZGF0aW9uIG9mIGNvbnN0YW50cy5hY2NvdW50VmFsaWRhdGlvbk1lc3NhZ2VzLmxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXN3SGVhZGVyRm9ybS5nZXQoJ2xhYmVsJyk/Lmhhc0Vycm9yKHZhbGlkYXRpb24udHlwZSkgJiYgKGFzd0hlYWRlckZvcm0uZ2V0KCdsYWJlbCcpPy5kaXJ0eSB8fCBhc3dIZWFkZXJGb3JtLmdldCgnbGFiZWwnKT8udG91Y2hlZClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3ZhbGlkYXRpb24ubWVzc2FnZSB8IGFzd1RyYW5zbGF0ZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFkYXRhLnByb3BlcnR5UGVyc29uYWxpemF0aW9uLmluY2x1ZGVzKCdjdXN0b21DU1NDbGFzcycpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFzdy1jb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImFzdy13aWR0aC0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+e3snRm9ybUNvbnRyb2wuQ3VzdG9tQ1NTQ2xhc3MnIHwgYXN3VHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImN1c3RvbUNsYXNzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7J0Zvcm1Db250cm9sLkN1c3RvbUNTU0NsYXNzJyB8IGFzd1RyYW5zbGF0ZX19XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwie3snRm9ybUNvbnRyb2wuQ3VzdG9tQ1NTQ2xhc3MnIHwgYXN3VHJhbnNsYXRlfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ7eyFkYXRhLnByb3BlcnR5UGVyc29uYWxpemF0aW9uLmluY2x1ZGVzKCdjdXN0b21DU1NDbGFzcycpID8gJ2Fzdy1jb2wtbWQtNicgOiAnYXN3LWNvbC1tZC0xMid9fVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiYXN3LXdpZHRoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPnt7J0Zvcm1Db250cm9sLlR5cGUnIHwgYXN3VHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwic3VidHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoMVwiPkgxPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoMlwiPkgyPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoM1wiPkgzPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoNFwiPkg0PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoNVwiPkg1PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJoNlwiPkg2PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFzdy1jb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNiBjbGFzcz1cImFzdy1mcy02IGFzdy1teS0yXCI+e3snRm9ybUNvbnRyb2wuU3R5bGUnIHwgYXN3VHJhbnNsYXRlfX06PC9oNj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXAgZm9ybUNvbnRyb2xOYW1lPVwic3R5bGVcIiBuYW1lPVwiZm9udFN0eWxlXCIgYXJpYS1sYWJlbD1cIkZvbnQgU3R5bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlIHZhbHVlPVwiYXN3LXRleHQtc3RhcnRcIiBhcmlhLWxhYmVsPVwiVGV4dCBhbGlnbiBsZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImljb25zLmp1c3RpZnlMZWZ0IHwgYXN3U2FmZUh0bWxcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSB2YWx1ZT1cImFzdy10ZXh0LWNlbnRlclwiIGFyaWEtbGFiZWw9XCJUZXh0IGFsaWduIGNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJpY29ucy5qdXN0aWZ5Q2VudGVyIHwgYXN3U2FmZUh0bWxcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSB2YWx1ZT1cImFzdy10ZXh0LWVuZFwiIGFyaWEtbGFiZWw9XCJUZXh0IGFsaWduIHJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImljb25zLmp1c3RpZnlSaWdodCB8IGFzd1NhZmVIdG1sXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1idXR0b24tdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXA+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm9vdHN0cmFwPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFzdy1jb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXN3LW1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYXN3LWlucHV0LWxhYmVsIGFzdy1pbnZhbGlkLWxhYmVsIHt7KGFzd0hlYWRlckZvcm0uZ2V0KCdsYWJlbCcpPy5pbnZhbGlkICYmIChhc3dIZWFkZXJGb3JtLmdldCgnbGFiZWwnKT8uZGlydHkgfHwgYXN3SGVhZGVyRm9ybS5nZXQoJ2xhYmVsJyk/LnRvdWNoZWQpKSA/ICdhc3ctcmVkLWNvbG9yJyA6ICcnfX1cIj57eydGb3JtQ29udHJvbC5MYWJlbCcgfCBhc3dUcmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhc3ctaW5wdXQtY29udHJvbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYXN3LWlzLWludmFsaWRdPVwiKGFzd0hlYWRlckZvcm0uZ2V0KCdsYWJlbCcpPy5pbnZhbGlkICYmIChhc3dIZWFkZXJGb3JtLmdldCgnbGFiZWwnKT8uZGlydHkgfHwgYXN3SGVhZGVyRm9ybS5nZXQoJ2xhYmVsJyk/LnRvdWNoZWQpKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwie3snRm9ybUNvbnRyb2wuTGFiZWwnIHwgYXN3VHJhbnNsYXRlfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibGFiZWxcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdmFsaWRhdGlvbiBvZiBjb25zdGFudHMuYWNjb3VudFZhbGlkYXRpb25NZXNzYWdlcy5sYWJlbFwiIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFzd0hlYWRlckZvcm0uZ2V0KCdsYWJlbCcpPy5oYXNFcnJvcih2YWxpZGF0aW9uLnR5cGUpICYmIChhc3dIZWFkZXJGb3JtLmdldCgnbGFiZWwnKT8uZGlydHkgfHwgYXN3SGVhZGVyRm9ybS5nZXQoJ2xhYmVsJyk/LnRvdWNoZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3t2YWxpZGF0aW9uLm1lc3NhZ2UgfCBhc3dUcmFuc2xhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWRhdGEucHJvcGVydHlQZXJzb25hbGl6YXRpb24uaW5jbHVkZXMoJ2N1c3RvbUNTU0NsYXNzJylcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXN3LWNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhc3ctbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYXN3LWlucHV0LWxhYmVsXCI+e3snRm9ybUNvbnRyb2wuQ3VzdG9tQ1NTQ2xhc3MnIHwgYXN3VHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY3VzdG9tQ2xhc3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYXN3LWlucHV0LWNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eydGb3JtQ29udHJvbC5DdXN0b21DU1NDbGFzcycgfCBhc3dUcmFuc2xhdGV9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiY3VzdG9tQ2xhc3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ7eyFkYXRhLnByb3BlcnR5UGVyc29uYWxpemF0aW9uLmluY2x1ZGVzKCdjdXN0b21DU1NDbGFzcycpID8gJ2Fzdy1jb2wtbWQtNicgOiAnYXN3LWNvbC1tZC0xMid9fVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhc3ctbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhc3ctaW5wdXQtbGFiZWxcIj57eydGb3JtQ29udHJvbC5UeXBlJyB8IGFzd1RyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJzdWJ0eXBlXCIgY2xhc3M9XCJhc3ctc2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiaDFcIj5IMTwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cImgyXCI+SDI8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJoM1wiPkgzPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiaDRcIj5INDwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cImg1XCI+SDU8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJoNlwiPkg2PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXN3LWNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwiYXN3LWZzLTYgYXN3LW15LTJcIj57eydGb3JtQ29udHJvbC5TdHlsZScgfCBhc3dUcmFuc2xhdGV9fTo8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cCBmb3JtQ29udHJvbE5hbWU9XCJzdHlsZVwiIG5hbWU9XCJmb250U3R5bGVcIiBhcmlhLWxhYmVsPVwiRm9udCBTdHlsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgdmFsdWU9XCJhc3ctdGV4dC1zdGFydFwiIGFyaWEtbGFiZWw9XCJUZXh0IGFsaWduIGxlZnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaWNvbnMuanVzdGlmeUxlZnQgfCBhc3dTYWZlSHRtbFwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlIHZhbHVlPVwiYXN3LXRleHQtY2VudGVyXCIgYXJpYS1sYWJlbD1cIlRleHQgYWxpZ24gY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImljb25zLmp1c3RpZnlDZW50ZXIgfCBhc3dTYWZlSHRtbFwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1idXR0b24tdG9nZ2xlIHZhbHVlPVwiYXN3LXRleHQtZW5kXCIgYXJpYS1sYWJlbD1cIlRleHQgYWxpZ24gcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaWNvbnMuanVzdGlmeVJpZ2h0IHwgYXN3U2FmZUh0bWxcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICA8bWF0LWRpYWxvZy1hY3Rpb25zIGFsaWduPVwiZW5kXCI+XHJcbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYXN3LWJ1dHRvbiBhc3ctYnV0dG9uLWRhbmdlciBhc3ctbWItMSBhc3ctbWUtMlwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ob0NsaWNrKClcIj5cclxuICAgICAgICAgICAge3snRm9ybUNvbnRyb2wuTm8nIHwgYXN3VHJhbnNsYXRlfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhc3ctYnV0dG9uIGFzdy1idXR0b24tcHJpbWFyeSBhc3ctbWItMVwiXHJcbiAgICAgICAgICAgICAgICBjZGtGb2N1c0luaXRpYWw+XHJcbiAgICAgICAgICAgIHt7J0Zvcm1Db250cm9sLlllcycgfCBhc3dUcmFuc2xhdGV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcbjwvZm9ybT5cclxuXHJcbiJdfQ==