@trudb/tru-common-lib 0.1.392 → 0.1.394
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/about-dialog/tru-about-dialog.mjs +5 -3
- package/esm2022/lib/components/login/tru-login.mjs +17 -12
- package/esm2022/lib/services/tru-app-environment.mjs +37 -1
- package/fesm2022/trudb-tru-common-lib.mjs +57 -15
- package/fesm2022/trudb-tru-common-lib.mjs.map +1 -1
- package/lib/components/about-dialog/tru-about-dialog.d.ts +1 -0
- package/lib/components/login/tru-login.d.ts +4 -1
- package/lib/services/tru-app-environment.d.ts +12 -0
- package/package.json +1 -1
|
@@ -10,25 +10,27 @@ export class TruAboutDialog {
|
|
|
10
10
|
data;
|
|
11
11
|
appEnvironment;
|
|
12
12
|
appName;
|
|
13
|
+
appDescription;
|
|
13
14
|
currentYear = new Date().getFullYear();
|
|
14
15
|
constructor(dialogRef, data, appEnvironment) {
|
|
15
16
|
this.dialogRef = dialogRef;
|
|
16
17
|
this.data = data;
|
|
17
18
|
this.appEnvironment = appEnvironment;
|
|
18
19
|
this.appName = this.appEnvironment.appName;
|
|
20
|
+
this.appDescription = this.appEnvironment.appDescription;
|
|
19
21
|
}
|
|
20
22
|
ngOnInit() { }
|
|
21
23
|
onDismiss() {
|
|
22
24
|
this.dialogRef.close(false);
|
|
23
25
|
}
|
|
24
26
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruAboutDialog, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.TruAppEnvironment }], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: TruAboutDialog, selector: "tru-about-dialog", ngImport: i0, template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n <div class=\"mat-dialog-title-container\">\r\n <mat-icon [svgIcon]=\"'about-icon'\"\r\n title=\"Settings\">\r\n </mat-icon>\r\n About - {{appName}}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content\">\r\n <
|
|
27
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: TruAboutDialog, selector: "tru-about-dialog", ngImport: i0, template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n <div class=\"mat-dialog-title-container\">\r\n <mat-icon [svgIcon]=\"'about-icon'\"\r\n title=\"Settings\">\r\n </mat-icon>\r\n About - {{appName}}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content\">\r\n <div class=\"tru-about-description\">\r\n {{appDescription}}\r\n </div>\r\n <p>\r\n Powered By TruDB\r\n </p>\r\n <p>\r\n Copyright {{currentYear}} TruDB LLC. All rights reserved.\r\n </p>\r\n</div>\r\n\r\n<div mat-dialog-actions class=\"mat-dialog-actions\">\r\n <button mat-raised-button (click)=\"onDismiss()\">Close</button>\r\n</div>\r\n", styles: ["::ng-deep .mat-mdc-dialog-surface{padding:20px}.mat-mdc-dialog-title:before{content:unset!important;height:unset!important;padding:0 0 10px!important}.mat-dialog-title-container mat-icon{vertical-align:sub;height:24px;width:24px}.mat-dialog-title-container{display:inline}.mdc-dialog__title{padding:0 0 10px!important}.mdc-dialog__content{padding:10px 0 15px!important}.mat-mdc-dialog-content p{margin-bottom:0;font-size:14px;color:#545454}.mat-mdc-dialog-actions{padding:0!important}.mat-mdc-dialog-actions button{margin-right:10px}.tru-about-description{width:550px;height:200px;padding:5px;margin-bottom:5px;border:1px #cbcbcb solid}\n"], dependencies: [{ kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
26
28
|
}
|
|
27
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruAboutDialog, decorators: [{
|
|
28
30
|
type: Component,
|
|
29
|
-
args: [{ selector: 'tru-about-dialog', template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n <div class=\"mat-dialog-title-container\">\r\n <mat-icon [svgIcon]=\"'about-icon'\"\r\n title=\"Settings\">\r\n </mat-icon>\r\n About - {{appName}}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content\">\r\n <
|
|
31
|
+
args: [{ selector: 'tru-about-dialog', template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n <div class=\"mat-dialog-title-container\">\r\n <mat-icon [svgIcon]=\"'about-icon'\"\r\n title=\"Settings\">\r\n </mat-icon>\r\n About - {{appName}}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content class=\"mat-dialog-content\">\r\n <div class=\"tru-about-description\">\r\n {{appDescription}}\r\n </div>\r\n <p>\r\n Powered By TruDB\r\n </p>\r\n <p>\r\n Copyright {{currentYear}} TruDB LLC. All rights reserved.\r\n </p>\r\n</div>\r\n\r\n<div mat-dialog-actions class=\"mat-dialog-actions\">\r\n <button mat-raised-button (click)=\"onDismiss()\">Close</button>\r\n</div>\r\n", styles: ["::ng-deep .mat-mdc-dialog-surface{padding:20px}.mat-mdc-dialog-title:before{content:unset!important;height:unset!important;padding:0 0 10px!important}.mat-dialog-title-container mat-icon{vertical-align:sub;height:24px;width:24px}.mat-dialog-title-container{display:inline}.mdc-dialog__title{padding:0 0 10px!important}.mdc-dialog__content{padding:10px 0 15px!important}.mat-mdc-dialog-content p{margin-bottom:0;font-size:14px;color:#545454}.mat-mdc-dialog-actions{padding:0!important}.mat-mdc-dialog-actions button{margin-right:10px}.tru-about-description{width:550px;height:200px;padding:5px;margin-bottom:5px;border:1px #cbcbcb solid}\n"] }]
|
|
30
32
|
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: TruAboutDialog, decorators: [{
|
|
31
33
|
type: Inject,
|
|
32
34
|
args: [MAT_DIALOG_DATA]
|
|
33
35
|
}] }, { type: i2.TruAppEnvironment }] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWFib3V0LWRpYWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9hYm91dC1kaWFsb2cvdHJ1LWFib3V0LWRpYWxvZy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9hYm91dC1kaWFsb2cvdHJ1LWFib3V0LWRpYWxvZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVExRCxNQUFNLE9BQU8sY0FBYztJQU1oQjtJQUN5QjtJQUN4QjtJQVBWLE9BQU8sQ0FBUztJQUNoQixjQUFjLENBQVM7SUFDdkIsV0FBVyxHQUFXLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFL0MsWUFDUyxTQUF1QyxFQUNkLElBQW9CLEVBQzVDLGNBQWlDO1FBRmxDLGNBQVMsR0FBVCxTQUFTLENBQThCO1FBQ2QsU0FBSSxHQUFKLElBQUksQ0FBZ0I7UUFDNUMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7UUFDM0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsUUFBUSxLQUFJLENBQUM7SUFFYixTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzt1R0FqQlUsY0FBYyw4Q0FPZixlQUFlOzJGQVBkLGNBQWMsd0RDVDNCLGdxQkF3QkE7OzJGRGZhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkFXekIsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJ1QXBwRW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cnUtYXBwLWVudmlyb25tZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHJ1LWFib3V0LWRpYWxvZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RydS1hYm91dC1kaWFsb2cuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJ1LWFib3V0LWRpYWxvZy5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1QWJvdXREaWFsb2cgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGFwcE5hbWU6IHN0cmluZztcclxuICBhcHBEZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIGN1cnJlbnRZZWFyOiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFRydUFib3V0RGlhbG9nPixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogVHJ1QWJvdXREaWFsb2csXHJcbiAgICBwcml2YXRlIGFwcEVudmlyb25tZW50OiBUcnVBcHBFbnZpcm9ubWVudCkge1xyXG4gICAgdGhpcy5hcHBOYW1lID0gdGhpcy5hcHBFbnZpcm9ubWVudC5hcHBOYW1lO1xyXG4gICAgdGhpcy5hcHBEZXNjcmlwdGlvbiA9IHRoaXMuYXBwRW52aXJvbm1lbnQuYXBwRGVzY3JpcHRpb247XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHt9XHJcblxyXG4gIG9uRGlzbWlzcygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGZhbHNlKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIjxkaXYgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cIm1hdC1kaWFsb2ctdGl0bGVcIj5cclxuICA8ZGl2IGNsYXNzPVwibWF0LWRpYWxvZy10aXRsZS1jb250YWluZXJcIj5cclxuICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCInYWJvdXQtaWNvbidcIlxyXG4gICAgICAgICAgICAgIHRpdGxlPVwiU2V0dGluZ3NcIj5cclxuICAgIDwvbWF0LWljb24+XHJcbiAgICBBYm91dCAtIHt7YXBwTmFtZX19XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJtYXQtZGlhbG9nLWNvbnRlbnRcIj5cclxuICA8ZGl2IGNsYXNzPVwidHJ1LWFib3V0LWRlc2NyaXB0aW9uXCI+XHJcbiAgICB7e2FwcERlc2NyaXB0aW9ufX1cclxuICA8L2Rpdj5cclxuICA8cD5cclxuICAgIFBvd2VyZWQgQnkgVHJ1REJcclxuICA8L3A+XHJcbiAgPHA+XHJcbiAgICBDb3B5cmlnaHQge3tjdXJyZW50WWVhcn19IFRydURCIExMQy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICA8L3A+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnMgY2xhc3M9XCJtYXQtZGlhbG9nLWFjdGlvbnNcIj5cclxuICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJvbkRpc21pc3MoKVwiPkNsb3NlPC9idXR0b24+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -3,22 +3,27 @@ import { FormGroup, FormControl, Validators } from '@angular/forms';
|
|
|
3
3
|
import { finalize } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "./services/tru-auth";
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "@angular/
|
|
8
|
-
import * as i4 from "@angular/material/
|
|
9
|
-
import * as i5 from "@angular/material/
|
|
10
|
-
import * as i6 from "@angular/material/
|
|
11
|
-
import * as i7 from "@angular/
|
|
6
|
+
import * as i2 from "../../services/tru-app-environment";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
import * as i4 from "@angular/material/button";
|
|
9
|
+
import * as i5 from "@angular/material/card";
|
|
10
|
+
import * as i6 from "@angular/material/input";
|
|
11
|
+
import * as i7 from "@angular/material/form-field";
|
|
12
|
+
import * as i8 from "@angular/forms";
|
|
12
13
|
export class TruLogin {
|
|
13
14
|
auth;
|
|
15
|
+
appEnvironment;
|
|
14
16
|
loginForm = new FormGroup({
|
|
15
17
|
username: new FormControl('', Validators.required),
|
|
16
18
|
password: new FormControl('', Validators.required)
|
|
17
19
|
});
|
|
18
20
|
loginError = "";
|
|
19
21
|
isLoggingIn = false;
|
|
20
|
-
|
|
22
|
+
title;
|
|
23
|
+
constructor(auth, appEnvironment) {
|
|
21
24
|
this.auth = auth;
|
|
25
|
+
this.appEnvironment = appEnvironment;
|
|
26
|
+
this.title = appEnvironment.loginFormTitle;
|
|
22
27
|
}
|
|
23
28
|
get f() {
|
|
24
29
|
return this.loginForm.controls;
|
|
@@ -49,11 +54,11 @@ export class TruLogin {
|
|
|
49
54
|
});
|
|
50
55
|
}
|
|
51
56
|
}
|
|
52
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruLogin, deps: [{ token: i1.TruAuth }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: TruLogin, selector: "tru-login", ngImport: i0, template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title>
|
|
57
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruLogin, deps: [{ token: i1.TruAuth }, { token: i2.TruAppEnvironment }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: TruLogin, selector: "tru-login", ngImport: i0, template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title> {{title}} </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-form-field>\r\n <mat-label>Username</mat-label>\r\n <input matInput formControlName=\"username\" placeholder=\"Username\">\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>Password</mat-label>\r\n <input matInput type=\"password\" formControlName=\"password\" placeholder=\"Password\">\r\n </mat-form-field>\r\n <div *ngIf=\"loginError\" class=\"animate-login-error animated rubberBand\">\r\n <p style=\"color: red; font-weight: bold;\"> {{ loginError }}</p>\r\n </div>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"isDisabled()\">Login</button>\r\n </mat-card-actions>\r\n </mat-card>\r\n </form>\r\n</div>\r\n", styles: [".login-container{display:flex;justify-content:center;align-items:center;height:100vh;margin:0;padding:0}.login-input{margin-bottom:20px}.animate-login{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;margin-top:50px}.wrapper{display:flex;justify-content:center;align-items:center;height:100vh}mat-card{max-width:300px;width:100%;max-height:300px;padding:20px}.form-group{width:100%;max-width:400px;margin-bottom:20px}.login-wrapper{display:flex;justify-content:center;align-items:center;height:100vh}::ng-deep .login-wrapper .mat-mdc-text-field-wrapper{padding:0 16px!important}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i5.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i5.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i5.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i5.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i6.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: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.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: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
54
59
|
}
|
|
55
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TruLogin, decorators: [{
|
|
56
61
|
type: Component,
|
|
57
|
-
args: [{ selector: 'tru-login', template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title>
|
|
58
|
-
}], ctorParameters: () => [{ type: i1.TruAuth }] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
args: [{ selector: 'tru-login', template: "<div class=\"login-wrapper\">\r\n <form [formGroup]=\"loginForm\" (ngSubmit)=\"onSubmit()\">\r\n <mat-card class=\"animate-login\">\r\n <mat-card-header>\r\n <mat-card-title> {{title}} </mat-card-title>\r\n </mat-card-header>\r\n <mat-card-content>\r\n <mat-form-field>\r\n <mat-label>Username</mat-label>\r\n <input matInput formControlName=\"username\" placeholder=\"Username\">\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>Password</mat-label>\r\n <input matInput type=\"password\" formControlName=\"password\" placeholder=\"Password\">\r\n </mat-form-field>\r\n <div *ngIf=\"loginError\" class=\"animate-login-error animated rubberBand\">\r\n <p style=\"color: red; font-weight: bold;\"> {{ loginError }}</p>\r\n </div>\r\n </mat-card-content>\r\n <mat-card-actions>\r\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"isDisabled()\">Login</button>\r\n </mat-card-actions>\r\n </mat-card>\r\n </form>\r\n</div>\r\n", styles: [".login-container{display:flex;justify-content:center;align-items:center;height:100vh;margin:0;padding:0}.login-input{margin-bottom:20px}.animate-login{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;margin-top:50px}.wrapper{display:flex;justify-content:center;align-items:center;height:100vh}mat-card{max-width:300px;width:100%;max-height:300px;padding:20px}.form-group{width:100%;max-width:400px;margin-bottom:20px}.login-wrapper{display:flex;justify-content:center;align-items:center;height:100vh}::ng-deep .login-wrapper .mat-mdc-text-field-wrapper{padding:0 16px!important}\n"] }]
|
|
63
|
+
}], ctorParameters: () => [{ type: i1.TruAuth }, { type: i2.TruAppEnvironment }] });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWxvZ2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2xvZ2luL3RydS1sb2dpbi50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9sb2dpbi90cnUtbG9naW4uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFRaEMsTUFBTSxPQUFPLFFBQVE7SUFVVDtJQUNBO0lBVlYsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDO1FBQ3hCLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztRQUNsRCxRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7S0FDbkQsQ0FBQyxDQUFDO0lBQ0gsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUN4QixXQUFXLEdBQVksS0FBSyxDQUFDO0lBQzdCLEtBQUssQ0FBUztJQUVkLFlBQ1UsSUFBYSxFQUNiLGNBQWlDO1FBRGpDLFNBQUksR0FBSixJQUFJLENBQVM7UUFDYixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDekMsSUFBSSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsY0FBYyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxVQUFVLEdBQUcsR0FBWSxFQUFFO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM5RSxDQUFDLENBQUE7SUFFRCxRQUFRO1FBQ04sTUFBTSxZQUFZLEdBQXdCO1lBQ3hDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFNO1lBQ2hDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFNO1NBQ2pDLENBQUM7UUFFRixJQUFJLFlBQVksQ0FBQyxRQUFRLElBQUksWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJO2lCQUNOLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQ3ZCLFFBQVEsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQ0g7aUJBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUMzQixDQUFDLEVBQ0UsQ0FBQyxLQUF3QixFQUFFLEVBQUU7Z0JBQzVCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztvQkFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxvQ0FBb0MsQ0FBQTtnQkFDeEQsQ0FBQztxQkFDSSxDQUFDO29CQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcseUJBQXlCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDN0QsQ0FBQztZQUNILENBQUMsQ0FDRixDQUFDO1FBQ04sQ0FBQztJQUNILENBQUM7dUdBbERVLFFBQVE7MkZBQVIsUUFBUSxpRENickIseWtDQXlCQTs7MkZEWmEsUUFBUTtrQkFMcEIsU0FBUzsrQkFDRSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFRydUF1dGggfSBmcm9tICcuL3NlcnZpY2VzL3RydS1hdXRoJztcclxuaW1wb3J0IHsgVHJ1QXV0aExvZ2luUmVxdWVzdCB9IGZyb20gXCIuL2NsYXNzZXMvdHJ1LWF1dGgtbG9naW4tcmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUcnVBcHBFbnZpcm9ubWVudCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS1hcHAtZW52aXJvbm1lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0cnUtbG9naW4nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtbG9naW4uaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJ1LWxvZ2luLmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVMb2dpbiB7XHJcbiAgbG9naW5Gb3JtID0gbmV3IEZvcm1Hcm91cCh7XHJcbiAgICB1c2VybmFtZTogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIHBhc3N3b3JkOiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMucmVxdWlyZWQpXHJcbiAgfSk7XHJcbiAgbG9naW5FcnJvcjogc3RyaW5nID0gXCJcIjtcclxuICBpc0xvZ2dpbmdJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoOiBUcnVBdXRoLFxyXG4gICAgcHJpdmF0ZSBhcHBFbnZpcm9ubWVudDogVHJ1QXBwRW52aXJvbm1lbnQpIHtcclxuICAgIHRoaXMudGl0bGUgPSBhcHBFbnZpcm9ubWVudC5sb2dpbkZvcm1UaXRsZTtcclxuICB9XHJcblxyXG4gIGdldCBmKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubG9naW5Gb3JtLmNvbnRyb2xzO1xyXG4gIH1cclxuXHJcbiAgaXNEaXNhYmxlZCA9ICgpOiBib29sZWFuID0+IHtcclxuICAgIHJldHVybiAhdGhpcy5mLnVzZXJuYW1lLnZhbHVlIHx8ICF0aGlzLmYucGFzc3dvcmQudmFsdWUgfHwgdGhpcy5pc0xvZ2dpbmdJbjtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgY29uc3QgbG9naW5SZXF1ZXN0OiBUcnVBdXRoTG9naW5SZXF1ZXN0ID0ge1xyXG4gICAgICB1c2VybmFtZTogdGhpcy5mLnVzZXJuYW1lLnZhbHVlISxcclxuICAgICAgcGFzc3dvcmQ6IHRoaXMuZi5wYXNzd29yZC52YWx1ZSFcclxuICAgIH07XHJcblxyXG4gICAgaWYgKGxvZ2luUmVxdWVzdC51c2VybmFtZSAmJiBsb2dpblJlcXVlc3QucGFzc3dvcmQpIHtcclxuICAgICAgdGhpcy5pc0xvZ2dpbmdJbiA9IHRydWU7XHJcbiAgICAgIHRoaXMuYXV0aFxyXG4gICAgICAgIC5sb2dpbihsb2dpblJlcXVlc3QpLnBpcGUoXHJcbiAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2dnaW5nSW4gPSBmYWxzZTsgXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaXNMb2dnaW5nSW4gPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgICAsKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcclxuICAgICAgICAgICAgICB0aGlzLmxvZ2luRXJyb3IgPSBcIkluY29ycmVjdCB1c2VybmFtZSBhbmQvb3IgcGFzc3dvcmRcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMubG9naW5FcnJvciA9IFwiSW52YWxpZCBMb2dpbiAtIEVycm9yOiBcIiArIGVycm9yLnN0YXR1cztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJsb2dpbi13cmFwcGVyXCI+XHJcbiAgPGZvcm0gW2Zvcm1Hcm91cF09XCJsb2dpbkZvcm1cIiAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiPlxyXG4gICAgPG1hdC1jYXJkIGNsYXNzPVwiYW5pbWF0ZS1sb2dpblwiPlxyXG4gICAgICA8bWF0LWNhcmQtaGVhZGVyPlxyXG4gICAgICAgIDxtYXQtY2FyZC10aXRsZT4ge3t0aXRsZX19IDwvbWF0LWNhcmQtdGl0bGU+XHJcbiAgICAgIDwvbWF0LWNhcmQtaGVhZGVyPlxyXG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlVzZXJuYW1lPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIiBwbGFjZWhvbGRlcj1cIlVzZXJuYW1lXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlBhc3N3b3JkPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiBwbGFjZWhvbGRlcj1cIlBhc3N3b3JkXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwibG9naW5FcnJvclwiIGNsYXNzPVwiYW5pbWF0ZS1sb2dpbi1lcnJvciBhbmltYXRlZCBydWJiZXJCYW5kXCI+XHJcbiAgICAgICAgICA8cCBzdHlsZT1cImNvbG9yOiByZWQ7IGZvbnQtd2VpZ2h0OiBib2xkO1wiPiB7eyBsb2dpbkVycm9yIH19PC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDxtYXQtY2FyZC1hY3Rpb25zPlxyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgdHlwZT1cInN1Ym1pdFwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkKClcIj5Mb2dpbjwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbiAgICA8L21hdC1jYXJkPlxyXG4gIDwvZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -7,6 +7,10 @@ export class TruAppEnvironment {
|
|
|
7
7
|
_appName;
|
|
8
8
|
_appDescription;
|
|
9
9
|
_appUri;
|
|
10
|
+
_enablePasswordStrength;
|
|
11
|
+
_backgroundImageUrl;
|
|
12
|
+
_environmentWarning;
|
|
13
|
+
_loginFormTitle;
|
|
10
14
|
_authType;
|
|
11
15
|
_maxRecordCount;
|
|
12
16
|
_isSaving = new BehaviorSubject(false);
|
|
@@ -38,6 +42,10 @@ export class TruAppEnvironment {
|
|
|
38
42
|
this._appName = '';
|
|
39
43
|
this._appDescription = '';
|
|
40
44
|
this._appUri = '';
|
|
45
|
+
this._enablePasswordStrength = true;
|
|
46
|
+
this._backgroundImageUrl = '';
|
|
47
|
+
this._environmentWarning = '';
|
|
48
|
+
this._loginFormTitle = '';
|
|
41
49
|
this._authType = 'jwt';
|
|
42
50
|
this._maxRecordCount = 0;
|
|
43
51
|
this.msgModifierKeyLabel = this.isMac ? 'Cmd' : 'Ctrl';
|
|
@@ -69,6 +77,34 @@ export class TruAppEnvironment {
|
|
|
69
77
|
set appDescription(description) {
|
|
70
78
|
this._appDescription = description;
|
|
71
79
|
}
|
|
80
|
+
get enablePasswordStrength() {
|
|
81
|
+
return this._enablePasswordStrength;
|
|
82
|
+
}
|
|
83
|
+
;
|
|
84
|
+
set enablePasswordStrength(enable) {
|
|
85
|
+
this._enablePasswordStrength = enable;
|
|
86
|
+
}
|
|
87
|
+
get backgroundImageUrl() {
|
|
88
|
+
return this._backgroundImageUrl;
|
|
89
|
+
}
|
|
90
|
+
;
|
|
91
|
+
set backgroundImageUrl(description) {
|
|
92
|
+
this._backgroundImageUrl = description;
|
|
93
|
+
}
|
|
94
|
+
get environmentWarning() {
|
|
95
|
+
return this._environmentWarning;
|
|
96
|
+
}
|
|
97
|
+
;
|
|
98
|
+
set environmentWarning(description) {
|
|
99
|
+
this._environmentWarning = description;
|
|
100
|
+
}
|
|
101
|
+
get loginFormTitle() {
|
|
102
|
+
return this._loginFormTitle;
|
|
103
|
+
}
|
|
104
|
+
;
|
|
105
|
+
set loginFormTitle(description) {
|
|
106
|
+
this._loginFormTitle = description;
|
|
107
|
+
}
|
|
72
108
|
get appUri() {
|
|
73
109
|
return this._appUri;
|
|
74
110
|
}
|
|
@@ -127,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
127
163
|
providedIn: 'root',
|
|
128
164
|
}]
|
|
129
165
|
}], ctorParameters: () => [{ type: i1.TruUser }] });
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWFwcC1lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvdHJ1LWFwcC1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQVluRCxNQUFNLE9BQU8saUJBQWlCO0lBaUNSO0lBaENaLFFBQVEsQ0FBUztJQUNqQixlQUFlLENBQVM7SUFDeEIsT0FBTyxDQUFTO0lBQ2hCLFNBQVMsQ0FBb0I7SUFDN0IsZUFBZSxDQUFTO0lBQ3hCLFNBQVMsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7SUFDMUUsYUFBYSxHQUFpRCxJQUFJLGVBQWUsQ0FBOEIsSUFBSSxDQUFDLENBQUM7SUFDckgsZUFBZSxHQUFpRCxJQUFJLGVBQWUsQ0FBOEIsSUFBSSxDQUFDLENBQUM7SUFDdkgsZUFBZSxHQUFpRCxJQUFJLGVBQWUsQ0FBOEIsSUFBSSxDQUFDLENBQUM7SUFDdkgsa0JBQWtCLEdBQTBCLElBQUksQ0FBQztJQUVoRCxtQkFBbUIsQ0FBUztJQUM1QixnQ0FBZ0MsQ0FBUztJQUN6QyxtQkFBbUIsQ0FBUztJQUM1QixpQkFBaUIsQ0FBUztJQUMxQixrQkFBa0IsQ0FBUztJQUMzQixpQkFBaUIsQ0FBUztJQUMxQixjQUFjLENBQVM7SUFDdkIsd0JBQXdCLENBQVM7SUFDakMsd0JBQXdCLENBQVM7SUFDakMscUJBQXFCLENBQVM7SUFDOUIsb0NBQW9DLENBQVM7SUFDN0MsaUJBQWlCLENBQVM7SUFDMUIsb0NBQW9DLENBQVM7SUFDN0MsZ0NBQWdDLENBQVM7SUFDekMsb0JBQW9CLENBQVM7SUFFL0IsZ0JBQWdCLEdBQXdCLElBQUksQ0FBQyxTQUFTLENBQUMsWUFB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dklVLGlCQUFpQjsyR0FBakIsaUJBQWlCLGNBRmhCLE1BQU07OzJGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSBcImJyZWV6ZS1jbGllbnRcIjtcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgVHJ1RGF0YUNvbnRleHQgfSBmcm9tIFwiLi90cnUtZGF0YS1jb250ZXh0XCI7XHJcbmltcG9ydCB7IFRydVVzZXIgfSBmcm9tIFwiLi90cnUtdXNlclwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25FdmVudENvbXBsZXRlZCB7XHJcbiAgc3VjY2Vzc2Z1bDogYm9vbGVhbjtcclxuICBlbnRpdGllcz86IEFycmF5PEVudGl0eT47XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVBcHBFbnZpcm9ubWVudCB7XHJcbiAgcHJpdmF0ZSBfYXBwTmFtZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2FwcERlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYXBwVXJpOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYXV0aFR5cGU6ICdzZXNzaW9uJyB8ICdqd3QnO1xyXG4gIHByaXZhdGUgX21heFJlY29yZENvdW50OiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfaXNTYXZpbmc6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHByaXZhdGUgX3NhdmVDb21wbGV0ZTogQmVoYXZpb3JTdWJqZWN0PEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4obnVsbCk7XHJcbiAgcHJpdmF0ZSBfcmV2ZXJ0Q29tcGxldGU6IEJlaGF2aW9yU3ViamVjdDxBY3Rpb25FdmVudENvbXBsZXRlZCB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBY3Rpb25FdmVudENvbXBsZXRlZCB8IG51bGw+KG51bGwpO1xyXG4gIHByaXZhdGUgX2RlbGV0ZUNvbXBsZXRlOiBCZWhhdmlvclN1YmplY3Q8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPihudWxsKTtcclxuICBwcml2YXRlIF9nbG9iYWxEYXRhQ29udGV4dDogVHJ1RGF0YUNvbnRleHQgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcmVhZG9ubHkgbXNnTW9kaWZpZXJLZXlMYWJlbDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0NvbmZpcm1FeGl0V2l0aENoYW5nZXNQZW5kaW5nOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnRGVsZXRlU3VjY2Vzc2Z1bDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ1NhdmVTdWNjZXNzZnVsOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnTm9DaGFuZ2VzVG9TYXZlOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnU2F2ZUluUHJvZ3Jlc3M6IHN0cmluZztcclxuICByZWFkb25seSBtc2dJbnZhbGlkRGF0YTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNSZWFkT25seTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNOYXZpZ2F0ZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNDbG9zZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNEZWxldGVFeGlzdGluZ1JlY29yZDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ05vRGVsZXRlQWNjZXNzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnQ2Fubm90RGVsZXRlTmV3QW5kRXhpc3RpbmdSZWNvcmRzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnRGVsZXRlUmVmZXJlbmNpbmdSZWNvcmRzRmlyc3Q6IHN0cmluZztcclxuICByZWFkb25seSBtc2dOb1JlY29yZHNTZWxlY3RlZDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgb25TYXZpbmdDaGFuZ2VkJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuX2lzU2F2aW5nLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIHB1YmxpYyBvblNhdmVDb21wbGV0ZSQ6IE9ic2VydmFibGU8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPiA9IHRoaXMuX3NhdmVDb21wbGV0ZS5hc09ic2VydmFibGUoKTtcclxuICBwdWJsaWMgb25SZXZlcnRDb21wbGV0ZSQ6IE9ic2VydmFibGU8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPiA9IHRoaXMuX3JldmVydENvbXBsZXRlLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIHB1YmxpYyBvbkRlbGV0ZUNvbXBsZXRlJDogT2JzZXJ2YWJsZTxBY3Rpb25FdmVudENvbXBsZXRlZCB8IG51bGw+ID0gdGhpcy5fZGVsZXRlQ29tcGxldGUuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJ1VXNlcjogVHJ1VXNlcikge1xyXG4gICAgdGhpcy5fYXBwTmFtZSA9ICcnO1xyXG4gICAgdGhpcy5fYXBwRGVzY3JpcHRpb24gPSAnJztcclxuICAgIHRoaXMuX2FwcFVyaSA9ICcnO1xyXG4gICAgdGhpcy5fYXV0aFR5cGUgPSAnand0JztcclxuICAgIHRoaXMuX21heFJlY29yZENvdW50ID0gMDtcclxuICAgIFxyXG4gICAgdGhpcy5tc2dNb2RpZmllcktleUxhYmVsID0gdGhpcy5pc01hYyA/ICdDbWQnIDogJ0N0cmwnO1xyXG4gICAgdGhpcy5tc2dDb25maXJtRXhpdFdpdGhDaGFuZ2VzUGVuZGluZyA9ICdZb3UgaGF2ZSB1bnNhdmVkIGNoYW5nZXMgdGhhdCB3aWxsIGJlIGxvc3QuJztcclxuICAgIHRoaXMubXNnRGVsZXRlU3VjY2Vzc2Z1bCA9ICdEZWxldGUgc3VjY2VlZGVkJztcclxuICAgIHRoaXMubXNnU2F2ZVN1Y2Nlc3NmdWwgPSAnU2F2ZSBzdWNjZWVkZWQnO1xyXG4gICAgdGhpcy5tc2dOb0NoYW5nZXNUb1NhdmUgPSAnTm8gY2hhbmdlcyB0byBzYXZlJztcclxuICAgIHRoaXMubXNnU2F2ZUluUHJvZ3Jlc3MgPSAnU2F2ZSBpbiBwcm9ncmVzcyc7XHJcbiAgICB0aGlzLm1zZ0ludmFsaWREYXRhID0gJ0ludmFsaWQgZGF0YSc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNSZWFkT25seSA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgZGlzYWJsaW5nIGVkaXRpbmcnO1xyXG4gICAgdGhpcy5tc2dEaXJ0eVByZXZlbnRzTmF2aWdhdGUgPSAnU2F2ZSBvciByZXZlcnQgYmVmb3JlIG5hdmlnYXRpbmcnO1xyXG4gICAgdGhpcy5tc2dEaXJ0eVByZXZlbnRzQ2xvc2UgPSAnU2F2ZSBvciByZXZlcnQgYmVmb3JlIGNsb3Npbmcgd2luZG93JztcclxuICAgIHRoaXMubXNnRGlydHlQcmV2ZW50c0RlbGV0ZUV4aXN0aW5nUmVjb3JkID0gJ1NhdmUgb3IgcmV2ZXJ0IGJlZm9yZSBkZWxldGluZyc7XHJcbiAgICB0aGlzLm1zZ05vRGVsZXRlQWNjZXNzID0gJ0NvbnRhY3QgYWRtaW5pc3RyYXRvciBhYm91dCBkZWxldGUgYWNjZXNzJztcclxuICAgIHRoaXMubXNnQ2Fubm90RGVsZXRlTmV3QW5kRXhpc3RpbmdSZWNvcmRzID0gJ0RlbGV0ZSBuZXcgb3IgZXhpc3RpbmcgcmVjb3JkcyAtIGJ1dCBub3QgYm90aCc7XHJcbiAgICB0aGlzLm1zZ0RlbGV0ZVJlZmVyZW5jaW5nUmVjb3Jkc0ZpcnN0ID0gJ0RlbGV0ZSBhbGwgcmVmZXJlbmNpbmcgcmVjb3JkcyBmaXJzdCc7XHJcbiAgICB0aGlzLm1zZ05vUmVjb3Jkc1NlbGVjdGVkID0gJ05vIFJlY29yZHMgc2VsZWN0ZWQnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFwcE5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9hcHBOYW1lO1xyXG4gIH1cclxuXHJcbiAgc2V0IGFwcE5hbWUobmFtZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9hcHBOYW1lID0gbmFtZTtcclxuICB9XHJcblxyXG4gIGdldCBhcHBEZXNjcmlwdGlvbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FwcERlc2NyaXB0aW9uO1xyXG4gIH07XHJcblxyXG4gIHNldCBhcHBEZXNjcmlwdGlvbihkZXNjcmlwdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9hcHBEZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFwcFVyaSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FwcFVyaTtcclxuICB9XHJcblxyXG4gIHNldCBhcHBVcmkodXJpOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2FwcFVyaSA9IHVyaTtcclxuICB9XHJcblxyXG4gIGdldCBhdXRoVHlwZSgpOiAnc2Vzc2lvbicgfCAnand0JyB7XHJcbiAgICByZXR1cm4gdGhpcy5fYXV0aFR5cGU7XHJcbiAgfVxyXG5cclxuICBzZXQgYXV0aFR5cGUodHlwZTogJ3Nlc3Npb24nIHwgJ2p3dCcpIHtcclxuICAgIHRoaXMuX2F1dGhUeXBlID0gdHlwZTtcclxuICB9XHJcblxyXG4gIGdldCBpc1NhdmluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9pc1NhdmluZy5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0IGlzU2F2aW5nKGlzU2F2aW5nOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc1NhdmluZy5uZXh0KGlzU2F2aW5nKTtcclxuICB9XHJcblxyXG4gIGdldCBtYXhSZWNvcmRDb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX21heFJlY29yZENvdW50O1xyXG4gIH1cclxuXHJcbiAgc2V0IG1heFJlY29yZENvdW50KG1heFJlY29yZENvdW50OiBudW1iZXIpIHtcclxuICAgIHRoaXMuX21heFJlY29yZENvdW50ID0gbWF4UmVjb3JkQ291bnQ7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2xvYmFsRGF0YUNvbnRleHQoKTogVHJ1RGF0YUNvbnRleHQgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLl9nbG9iYWxEYXRhQ29udGV4dDtcclxuICB9XHJcblxyXG4gIHNldCBnbG9iYWxEYXRhQ29udGV4dChjb250ZXh0OiBUcnVEYXRhQ29udGV4dCB8IG51bGwpIHtcclxuICAgIHRoaXMuX2dsb2JhbERhdGFDb250ZXh0ID0gY29udGV4dCA7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNNYWMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gbmF2aWdhdG9yLnBsYXRmb3JtLnRvVXBwZXJDYXNlKCkuaW5kZXhPZignTUFDJykgPj0gMDtcclxuICB9XHJcblxyXG4gIHNhdmVDb21wbGV0ZSA9IChldmVudDogQWN0aW9uRXZlbnRDb21wbGV0ZWQpOiB2b2lkID0+IHtcclxuICAgIHRoaXMuX3NhdmVDb21wbGV0ZS5uZXh0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHJldmVydENvbXBsZXRlID0gKGV2ZW50OiBBY3Rpb25FdmVudENvbXBsZXRlZCk6IHZvaWQgPT4ge1xyXG4gICAgdGhpcy5fcmV2ZXJ0Q29tcGxldGUubmV4dChldmVudCk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVDb21wbGV0ZSA9IChldmVudDogQWN0aW9uRXZlbnRDb21wbGV0ZWQpOiB2b2lkID0+IHtcclxuICAgIHRoaXMuX2RlbGV0ZUNvbXBsZXRlLm5leHQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgZm9ybWF0RGVsZXRlQ29uZmlybWF0aW9uTWVzc2FnZSA9ICh0YWJsZU5hbWU6IHN0cmluZywgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nLCBjb3VudDogbnVtYmVyIHwgbnVsbCk6IHN0cmluZyA9PiB7XHJcbiAgICBpZiAoY291bnQgPT09IG51bGwpXHJcbiAgICAgIHJldHVybiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzICcgKyB0YWJsZU5hbWUgKyAnPyc7XHJcbiAgICBpZiAoY291bnQgPT09IDEpXHJcbiAgICAgIHJldHVybiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSAxICcgKyB0YWJsZU5hbWUgKyAnPyc7XHJcbiAgICByZXR1cm4gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgJyArIGNvdW50ICsgJyAnICsgdGFibGVQbHVyYWxMYWJlbCArICc/JztcclxuICB9XHJcbn1cclxuIl19
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWFwcC1lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvdHJ1LWFwcC1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQVluRCxNQUFNLE9BQU8saUJBQWlCO0lBc0NSO0lBckNaLFFBQVEsQ0FBUztJQUNqQixlQUFlLENBQVM7SUFDeEIsT0FBTyxDQUFTO0lBQ2hCLHVCQUF1QixDQUFVO0lBQ2pDLG1CQUFtQixDQUFTO0lBQzVCLG1CQUFtQixDQUFTO0lBQzVCLGVBQWUsQ0FBUztJQUV4QixTQUFTLENBQW9CO0lBQzdCLGVBQWUsQ0FBUztJQUN4QixTQUFTLEdBQTZCLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQzFFLGFBQWEsR0FBaUQsSUFBSSxlQUFlLENBQThCLElBQUksQ0FBQyxDQUFDO0lBQ3JILGVBQWUsR0FBaUQsSUFBSSxlQUFlLENBQThCLElBQUksQ0FBQyxDQUFDO0lBQ3ZILGVBQWUsR0FBaUQsSUFBSSxlQUFlLENBQThCLElBQUksQ0FBQyxDQUFDO0lBQ3ZILGtCQUFrQixHQUEwQixJQUFJLENBQUM7SUFFaEQsbUJBQW1CLENBQVM7SUFDNUIsZ0NBQWdDLENBQVM7SUFDekMsbUJBQW1CLENBQVM7SUFDNUIsaUJBQWlCLENBQVM7SUFDMUIsa0JBQWtCLENBQVM7SUFDM0IsaUJBQWlCLENBQVM7SUFDMUIsY0FBYyxDQUFTO0lBQ3ZCLHdCQUF3QixDQUFTO0lBQ2pDLHdCQUF3QixDQUFTO0lBQ2pDLHFCQUFxQixDQUFTO0lBQzlCLG9DQUFvQyxDQUFTO0lBQzdDLGlCQUFpQixDQUFTO0lBQzFCLG9DQUFvQyxDQUFTO0lBQzdDLGdD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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tIFwiYnJlZXplLWNsaWVudFwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBUcnVEYXRhQ29udGV4dCB9IGZyb20gXCIuL3RydS1kYXRhLWNvbnRleHRcIjtcclxuaW1wb3J0IHsgVHJ1VXNlciB9IGZyb20gXCIuL3RydS11c2VyXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkV2ZW50Q29tcGxldGVkIHtcclxuICBzdWNjZXNzZnVsOiBib29sZWFuO1xyXG4gIGVudGl0aWVzPzogQXJyYXk8RW50aXR5PjtcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRydUFwcEVudmlyb25tZW50IHtcclxuICBwcml2YXRlIF9hcHBOYW1lOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYXBwRGVzY3JpcHRpb246IHN0cmluZztcclxuICBwcml2YXRlIF9hcHBVcmk6IHN0cmluZztcclxuICBwcml2YXRlIF9lbmFibGVQYXNzd29yZFN0cmVuZ3RoOiBib29sZWFuO1xyXG4gIHByaXZhdGUgX2JhY2tncm91bmRJbWFnZVVybDogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2Vudmlyb25tZW50V2FybmluZzogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2xvZ2luRm9ybVRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIHByaXZhdGUgX2F1dGhUeXBlOiAnc2Vzc2lvbicgfCAnand0JztcclxuICBwcml2YXRlIF9tYXhSZWNvcmRDb3VudDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2lzU2F2aW5nOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIF9zYXZlQ29tcGxldGU6IEJlaGF2aW9yU3ViamVjdDxBY3Rpb25FdmVudENvbXBsZXRlZCB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBY3Rpb25FdmVudENvbXBsZXRlZCB8IG51bGw+KG51bGwpO1xyXG4gIHByaXZhdGUgX3JldmVydENvbXBsZXRlOiBCZWhhdmlvclN1YmplY3Q8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPihudWxsKTtcclxuICBwcml2YXRlIF9kZWxldGVDb21wbGV0ZTogQmVoYXZpb3JTdWJqZWN0PEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4obnVsbCk7XHJcbiAgcHJpdmF0ZSBfZ2xvYmFsRGF0YUNvbnRleHQ6IFRydURhdGFDb250ZXh0IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHJlYWRvbmx5IG1zZ01vZGlmaWVyS2V5TGFiZWw6IHN0cmluZztcclxuICByZWFkb25seSBtc2dDb25maXJtRXhpdFdpdGhDaGFuZ2VzUGVuZGluZzogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RlbGV0ZVN1Y2Nlc3NmdWw6IHN0cmluZztcclxuICByZWFkb25seSBtc2dTYXZlU3VjY2Vzc2Z1bDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ05vQ2hhbmdlc1RvU2F2ZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ1NhdmVJblByb2dyZXNzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnSW52YWxpZERhdGE6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzUmVhZE9ubHk6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzTmF2aWdhdGU6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzQ2xvc2U6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzRGVsZXRlRXhpc3RpbmdSZWNvcmQ6IHN0cmluZztcclxuICByZWFkb25seSBtc2dOb0RlbGV0ZUFjY2Vzczogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0Nhbm5vdERlbGV0ZU5ld0FuZEV4aXN0aW5nUmVjb3Jkczogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RlbGV0ZVJlZmVyZW5jaW5nUmVjb3Jkc0ZpcnN0OiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnTm9SZWNvcmRzU2VsZWN0ZWQ6IHN0cmluZztcclxuXHJcbiAgcHVibGljIG9uU2F2aW5nQ2hhbmdlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLl9pc1NhdmluZy5hc09ic2VydmFibGUoKTtcclxuICBwdWJsaWMgb25TYXZlQ29tcGxldGUkOiBPYnNlcnZhYmxlPEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4gPSB0aGlzLl9zYXZlQ29tcGxldGUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgcHVibGljIG9uUmV2ZXJ0Q29tcGxldGUkOiBPYnNlcnZhYmxlPEFjdGlvbkV2ZW50Q29tcGxldGVkIHwgbnVsbD4gPSB0aGlzLl9yZXZlcnRDb21wbGV0ZS5hc09ic2VydmFibGUoKTtcclxuICBwdWJsaWMgb25EZWxldGVDb21wbGV0ZSQ6IE9ic2VydmFibGU8QWN0aW9uRXZlbnRDb21wbGV0ZWQgfCBudWxsPiA9IHRoaXMuX2RlbGV0ZUNvbXBsZXRlLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRydVVzZXI6IFRydVVzZXIpIHtcclxuICAgIHRoaXMuX2FwcE5hbWUgPSAnJztcclxuICAgIHRoaXMuX2FwcERlc2NyaXB0aW9uID0gJyc7XHJcbiAgICB0aGlzLl9hcHBVcmkgPSAnJztcclxuICAgIHRoaXMuX2VuYWJsZVBhc3N3b3JkU3RyZW5ndGggPSB0cnVlO1xyXG4gICAgdGhpcy5fYmFja2dyb3VuZEltYWdlVXJsID0gJyc7XHJcbiAgICB0aGlzLl9lbnZpcm9ubWVudFdhcm5pbmcgPSAnJztcclxuICAgIHRoaXMuX2xvZ2luRm9ybVRpdGxlID0gJyc7XHJcbiAgICB0aGlzLl9hdXRoVHlwZSA9ICdqd3QnO1xyXG4gICAgdGhpcy5fbWF4UmVjb3JkQ291bnQgPSAwO1xyXG4gICAgXHJcbiAgICB0aGlzLm1zZ01vZGlmaWVyS2V5TGFiZWwgPSB0aGlzLmlzTWFjID8gJ0NtZCcgOiAnQ3RybCc7XHJcbiAgICB0aGlzLm1zZ0NvbmZpcm1FeGl0V2l0aENoYW5nZXNQZW5kaW5nID0gJ1lvdSBoYXZlIHVuc2F2ZWQgY2hhbmdlcyB0aGF0IHdpbGwgYmUgbG9zdC4nO1xyXG4gICAgdGhpcy5tc2dEZWxldGVTdWNjZXNzZnVsID0gJ0RlbGV0ZSBzdWNjZWVkZWQnO1xyXG4gICAgdGhpcy5tc2dTYXZlU3VjY2Vzc2Z1bCA9ICdTYXZlIHN1Y2NlZWRlZCc7XHJcbiAgICB0aGlzLm1zZ05vQ2hhbmdlc1RvU2F2ZSA9ICdObyBjaGFuZ2VzIHRvIHNhdmUnO1xyXG4gICAgdGhpcy5tc2dTYXZlSW5Qcm9ncmVzcyA9ICdTYXZlIGluIHByb2dyZXNzJztcclxuICAgIHRoaXMubXNnSW52YWxpZERhdGEgPSAnSW52YWxpZCBkYXRhJztcclxuICAgIHRoaXMubXNnRGlydHlQcmV2ZW50c1JlYWRPbmx5ID0gJ1NhdmUgb3IgcmV2ZXJ0IGJlZm9yZSBkaXNhYmxpbmcgZWRpdGluZyc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNOYXZpZ2F0ZSA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgbmF2aWdhdGluZyc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNDbG9zZSA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgY2xvc2luZyB3aW5kb3cnO1xyXG4gICAgdGhpcy5tc2dEaXJ0eVByZXZlbnRzRGVsZXRlRXhpc3RpbmdSZWNvcmQgPSAnU2F2ZSBvciByZXZlcnQgYmVmb3JlIGRlbGV0aW5nJztcclxuICAgIHRoaXMubXNnTm9EZWxldGVBY2Nlc3MgPSAnQ29udGFjdCBhZG1pbmlzdHJhdG9yIGFib3V0IGRlbGV0ZSBhY2Nlc3MnO1xyXG4gICAgdGhpcy5tc2dDYW5ub3REZWxldGVOZXdBbmRFeGlzdGluZ1JlY29yZHMgPSAnRGVsZXRlIG5ldyBvciBleGlzdGluZyByZWNvcmRzIC0gYnV0IG5vdCBib3RoJztcclxuICAgIHRoaXMubXNnRGVsZXRlUmVmZXJlbmNpbmdSZWNvcmRzRmlyc3QgPSAnRGVsZXRlIGFsbCByZWZlcmVuY2luZyByZWNvcmRzIGZpcnN0JztcclxuICAgIHRoaXMubXNnTm9SZWNvcmRzU2VsZWN0ZWQgPSAnTm8gUmVjb3JkcyBzZWxlY3RlZCc7XHJcbiAgfVxyXG5cclxuICBnZXQgYXBwTmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FwcE5hbWU7XHJcbiAgfVxyXG5cclxuICBzZXQgYXBwTmFtZShuYW1lOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2FwcE5hbWUgPSBuYW1lO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFwcERlc2NyaXB0aW9uKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fYXBwRGVzY3JpcHRpb247XHJcbiAgfTtcclxuXHJcbiAgc2V0IGFwcERlc2NyaXB0aW9uKGRlc2NyaXB0aW9uOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2FwcERlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XHJcbiAgfVxyXG5cclxuICBnZXQgZW5hYmxlUGFzc3dvcmRTdHJlbmd0aCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9lbmFibGVQYXNzd29yZFN0cmVuZ3RoO1xyXG4gIH07XHJcblxyXG4gIHNldCBlbmFibGVQYXNzd29yZFN0cmVuZ3RoKGVuYWJsZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZW5hYmxlUGFzc3dvcmRTdHJlbmd0aCA9IGVuYWJsZTtcclxuICB9XHJcblxyXG4gIGdldCBiYWNrZ3JvdW5kSW1hZ2VVcmwoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9iYWNrZ3JvdW5kSW1hZ2VVcmw7XHJcbiAgfTtcclxuXHJcbiAgc2V0IGJhY2tncm91bmRJbWFnZVVybChkZXNjcmlwdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9iYWNrZ3JvdW5kSW1hZ2VVcmwgPSBkZXNjcmlwdGlvbjtcclxuICB9XHJcblxyXG4gIGdldCBlbnZpcm9ubWVudFdhcm5pbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9lbnZpcm9ubWVudFdhcm5pbmc7XHJcbiAgfTtcclxuXHJcbiAgc2V0IGVudmlyb25tZW50V2FybmluZyhkZXNjcmlwdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9lbnZpcm9ubWVudFdhcm5pbmcgPSBkZXNjcmlwdGlvbjtcclxuICB9XHJcblxyXG4gIGdldCBsb2dpbkZvcm1UaXRsZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xvZ2luRm9ybVRpdGxlO1xyXG4gIH07XHJcblxyXG4gIHNldCBsb2dpbkZvcm1UaXRsZShkZXNjcmlwdGlvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9sb2dpbkZvcm1UaXRsZSA9IGRlc2NyaXB0aW9uO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFwcFVyaSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FwcFVyaTtcclxuICB9XHJcblxyXG4gIHNldCBhcHBVcmkodXJpOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2FwcFVyaSA9IHVyaTtcclxuICB9XHJcblxyXG4gIGdldCBhdXRoVHlwZSgpOiAnc2Vzc2lvbicgfCAnand0JyB7XHJcbiAgICByZXR1cm4gdGhpcy5fYXV0aFR5cGU7XHJcbiAgfVxyXG5cclxuICBzZXQgYXV0aFR5cGUodHlwZTogJ3Nlc3Npb24nIHwgJ2p3dCcpIHtcclxuICAgIHRoaXMuX2F1dGhUeXBlID0gdHlwZTtcclxuICB9XHJcblxyXG4gIGdldCBpc1NhdmluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9pc1NhdmluZy5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0IGlzU2F2aW5nKGlzU2F2aW5nOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc1NhdmluZy5uZXh0KGlzU2F2aW5nKTtcclxuICB9XHJcblxyXG4gIGdldCBtYXhSZWNvcmRDb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX21heFJlY29yZENvdW50O1xyXG4gIH1cclxuXHJcbiAgc2V0IG1heFJlY29yZENvdW50KG1heFJlY29yZENvdW50OiBudW1iZXIpIHtcclxuICAgIHRoaXMuX21heFJlY29yZENvdW50ID0gbWF4UmVjb3JkQ291bnQ7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2xvYmFsRGF0YUNvbnRleHQoKTogVHJ1RGF0YUNvbnRleHQgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLl9nbG9iYWxEYXRhQ29udGV4dDtcclxuICB9XHJcblxyXG4gIHNldCBnbG9iYWxEYXRhQ29udGV4dChjb250ZXh0OiBUcnVEYXRhQ29udGV4dCB8IG51bGwpIHtcclxuICAgIHRoaXMuX2dsb2JhbERhdGFDb250ZXh0ID0gY29udGV4dCA7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNNYWMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gbmF2aWdhdG9yLnBsYXRmb3JtLnRvVXBwZXJDYXNlKCkuaW5kZXhPZignTUFDJykgPj0gMDtcclxuICB9XHJcblxyXG4gIHNhdmVDb21wbGV0ZSA9IChldmVudDogQWN0aW9uRXZlbnRDb21wbGV0ZWQpOiB2b2lkID0+IHtcclxuICAgIHRoaXMuX3NhdmVDb21wbGV0ZS5uZXh0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHJldmVydENvbXBsZXRlID0gKGV2ZW50OiBBY3Rpb25FdmVudENvbXBsZXRlZCk6IHZvaWQgPT4ge1xyXG4gICAgdGhpcy5fcmV2ZXJ0Q29tcGxldGUubmV4dChldmVudCk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVDb21wbGV0ZSA9IChldmVudDogQWN0aW9uRXZlbnRDb21wbGV0ZWQpOiB2b2lkID0+IHtcclxuICAgIHRoaXMuX2RlbGV0ZUNvbXBsZXRlLm5leHQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgZm9ybWF0RGVsZXRlQ29uZmlybWF0aW9uTWVzc2FnZSA9ICh0YWJsZU5hbWU6IHN0cmluZywgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nLCBjb3VudDogbnVtYmVyIHwgbnVsbCk6IHN0cmluZyA9PiB7XHJcbiAgICBpZiAoY291bnQgPT09IG51bGwpXHJcbiAgICAgIHJldHVybiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzICcgKyB0YWJsZU5hbWUgKyAnPyc7XHJcbiAgICBpZiAoY291bnQgPT09IDEpXHJcbiAgICAgIHJldHVybiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSAxICcgKyB0YWJsZU5hbWUgKyAnPyc7XHJcbiAgICByZXR1cm4gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgJyArIGNvdW50ICsgJyAnICsgdGFibGVQbHVyYWxMYWJlbCArICc/JztcclxuICB9XHJcbn1cclxuIl19
|