@testgorilla/tgo-ui 0.0.24 → 0.0.26

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/.github/README.md CHANGED
@@ -46,7 +46,19 @@ In order to update the existing snapshots, we need to use DOCKER to update, sinc
46
46
  ```
47
47
  docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:latest /bin/bash
48
48
  npm install
49
- npx playwright test e2e/common.spec.ts --update-snapshots
49
+ npx playwright install
50
+ npx playwright test e2e/<file_name>.spec.ts --update-snapshots
51
+ ```
52
+
53
+ if you see the following error, you can skip them conviniently. This will not affect the tests, just that we will have the reports in same directory. We need the reports to be in a single directory to store artifacts in CI. So we can ignore them.
54
+ ```
55
+ root@docker-desktop:/work# npx playwright test e2e/common.spec.ts --update-snapshots
56
+ Configuration Error: HTML reporter output folder clashes with the tests output folder:
57
+
58
+ html reporter folder: /work/test-results/html-report
59
+ test results folder: /work/test-results
60
+
61
+ HTML reporter will clear its output directory prior to being generated, which will lead to the artifact loss.
50
62
  ```
51
63
 
52
64
  In order to execute the visual tests, we need to use same docker so that the screenshots are aligned with the same OS.
@@ -54,7 +66,8 @@ In order to execute the visual tests, we need to use same docker so that the scr
54
66
  ```
55
67
  docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:latest /bin/bash
56
68
  npm install
57
- npx playwright test e2e/common.spec.ts
69
+ npx playwright install
70
+ npx playwright test e2e/<file_name>.spec.ts
58
71
  ```
59
72
 
60
73
  Currently we are using `toMatchSnapshot` instead of the latest `toHaveScreenshot` from playwright. Since `toHaveScreenshot` doesn't support firefox now, we are going ahead with `toMatchSnapshot`. In (near) future once it supports firefox, we will be using the latest `toHaveScreenshot` method.
package/README.md CHANGED
@@ -8,11 +8,11 @@
8
8
  * Create Password
9
9
  * Field
10
10
  * Forgot Password
11
+ * Label
11
12
  * Login
12
13
  * Logo
13
14
  * NavBar
14
15
  * Navigation
15
16
  * Paginator
16
17
  * Create Account
17
- * Status
18
18
  * Table
@@ -26,6 +26,13 @@ export declare class LabelComponent {
26
26
  * @memberof LabelComponent
27
27
  */
28
28
  title: string;
29
+ /**
30
+ * Status description
31
+ *
32
+ * @type {string}
33
+ * @memberof LabelComponent
34
+ */
35
+ description: string;
29
36
  /**
30
37
  * Label size
31
38
  *
@@ -35,5 +42,5 @@ export declare class LabelComponent {
35
42
  size: LabelSizeEnum;
36
43
  constructor();
37
44
  static ɵfac: i0.ɵɵFactoryDeclaration<LabelComponent, never>;
38
- static ɵcmp: i0.ɵɵComponentDeclaration<LabelComponent, "ui-label", never, { "backgroundColor": "backgroundColor"; "textColor": "textColor"; "title": "title"; "size": "size"; }, {}, never, never>;
45
+ static ɵcmp: i0.ɵɵComponentDeclaration<LabelComponent, "ui-label", never, { "backgroundColor": "backgroundColor"; "textColor": "textColor"; "title": "title"; "description": "description"; "size": "size"; }, {}, never, never>;
39
46
  }
@@ -4,6 +4,7 @@ export declare const LOGIN_i18n: {
4
4
  password_placeholder: string;
5
5
  remember_me: string;
6
6
  forgot_password: string;
7
+ button_label: string;
7
8
  not_have_account: string;
8
9
  create_account: string;
9
10
  };
@@ -9,6 +9,7 @@ export interface Ii18nLogin {
9
9
  password_placeholder: string;
10
10
  remember_me: string;
11
11
  forgot_password: string;
12
+ button_label: string;
12
13
  not_have_account: string;
13
14
  create_account: string;
14
15
  }
@@ -9,10 +9,10 @@ export class CardComponent {
9
9
  }
10
10
  }
11
11
  CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardComponent, selector: "ui-card", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i2.LogoComponent, selector: "ui-logo" }], directives: [{ type: i1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12
+ CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardComponent, selector: "ui-card", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i2.LogoComponent, selector: "ui-logo" }], directives: [{ type: i1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardComponent, decorators: [{
14
14
  type: Component,
15
- args: [{ selector: 'ui-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"] }]
15
+ args: [{ selector: 'ui-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"] }]
16
16
  }], propDecorators: { title: [{
17
17
  type: Input
18
18
  }], subTitle: [{
@@ -89,7 +89,7 @@ FieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
89
89
  useExisting: forwardRef(() => FieldComponent),
90
90
  multi: true,
91
91
  },
92
- ], ngImport: i0, template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\">{{ error }}</mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.column{display:flex;flex-direction:column}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i1.MatPrefix, selector: "[matPrefix]" }, { type: i4.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"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }, { type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }] });
92
+ ], ngImport: i0, template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\" [innerHTML]=\"hint\"></mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\" [innerHTML]=\"error\"></mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.mat-form-field .error ::ng-deep a{color:#46a997;text-decoration:none}.column{display:flex;flex-direction:column}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i1.MatPrefix, selector: "[matPrefix]" }, { type: i4.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"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }, { type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }] });
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FieldComponent, decorators: [{
94
94
  type: Component,
95
95
  args: [{ selector: 'ui-field', providers: [
@@ -98,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
98
98
  useExisting: forwardRef(() => FieldComponent),
99
99
  multi: true,
100
100
  },
101
- ], template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\">{{ error }}</mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.column{display:flex;flex-direction:column}\n"] }]
101
+ ], template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\" [innerHTML]=\"hint\"></mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\" [innerHTML]=\"error\"></mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.mat-form-field .error ::ng-deep a{color:#46a997;text-decoration:none}.column{display:flex;flex-direction:column}\n"] }]
102
102
  }], ctorParameters: function () { return []; }, propDecorators: { label: [{
103
103
  type: Input
104
104
  }], preffixIcon: [{
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
116
116
  }], type: [{
117
117
  type: Input
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvZmllbGQvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvZmllbGQvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFjbkQsTUFBTSxPQUFPLGNBQWM7SUFrR3pCO1FBakRBOzs7OztXQUtHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFMUI7Ozs7O1dBS0c7UUFDTSxTQUFJLEdBQUcsTUFBTSxDQUFDO1FBRXZCOzs7OztXQUtHO1FBQ0gsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQVVYOzs7OztXQUtHO1FBQ0gsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEI7O1dBRUc7UUFDSCxhQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMxQjs7V0FFRztRQUNILFlBQU8sR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFSixDQUFDO0lBRWhCLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO1lBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7U0FDMUI7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7WUFDM0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM5RTtJQUNILENBQUM7OzRHQTdJVSxjQUFjO2dHQUFkLGNBQWMsbU5BUmQ7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7WUFDN0MsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQ2JILDB0QkFpQkE7NEZERmEsY0FBYztrQkFaMUIsU0FBUzsrQkFDRSxVQUFVLGFBR1Q7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDOzRCQUM3QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjswRUFTUSxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsV0FBVztzQkFBbkIsS0FBSztnQkFRRyxVQUFVO3NCQUFsQixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLO2dCQVFHLEtBQUs7c0JBQWIsS0FBSztnQkFRRyxXQUFXO3NCQUFuQixLQUFLO2dCQVFHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWVsZENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBGb3JtIGZpZWxkIGxhYmVsXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogUHJlZmZpeCBpY29uIChiZWZvcmUgaW5wdXQgdGV4dClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBwcmVmZml4SWNvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdWZmaXggaWNvbiAoYWZ0ZXIgaW5wdXQgdGV4dClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzdWZmaXhJY29uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElucHV0IGlzIHJlcXVpcmVkIG9yIG5vdFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogSGludCB0ZXh0XG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgaGludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFcnJvciB0ZXh0ICh3aWxsIHJlcGxhY2UgaGludClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBlcnJvcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBwbGFjZWhvbGRlclxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgLyoqXG4gICAqIElucHV0IHR5cGVcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0eXBlID0gJ3RleHQnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YWx1ZVxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIHZhbHVlID0gJyc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgaW5wdXQgaXMgZGlzYWJsZWRcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBmaWVsZCB3aWxsIGJlIGEgcGFzc3dvcmQgaW5wdXQuIFdpbGwgd29yayBpZiBpbnB1dCB0eXBlIGlzIHNldCB0byAncGFzc3dvcmQnXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIHBhc3N3b3JkRmllbGQgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25DaGFuZ2UgPSAoXzogYW55KSA9PiB7fTtcbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9uVG91Y2ggPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ3Bhc3N3b3JkJykge1xuICAgICAgdGhpcy5wYXNzd29yZEZpZWxkID0gdHJ1ZTtcbiAgICAgIHRoaXMuc3VmZml4SWNvbiA9ICd2aXNpYmlsaXR5JztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25JbnB1dChldmVudDogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgc3VmZml4SWNvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGFzc3dvcmRGaWVsZCkge1xuICAgICAgdGhpcy50eXBlID0gdGhpcy50eXBlID09PSAncGFzc3dvcmQnID8gJ3RleHQnIDogJ3Bhc3N3b3JkJztcbiAgICAgIHRoaXMuc3VmZml4SWNvbiA9IHRoaXMudHlwZSA9PT0gJ3Bhc3N3b3JkJyA/ICd2aXNpYmlsaXR5JyA6ICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIFtjb2xvcl09XCJlcnJvciA/ICd3YXJuJyA6ICdwcmltYXJ5J1wiPlxuICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19IDxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbWF0LWxhYmVsPlxuICAgIDxtYXQtaWNvbiBtYXRQcmVmaXggKm5nSWY9XCJwcmVmZml4SWNvblwiPnt7IHByZWZmaXhJY29uIH19PC9tYXQtaWNvbj5cbiAgICA8aW5wdXRcbiAgICAgIG1hdElucHV0XG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgICA8bWF0LWljb24gbWF0U3VmZml4ICpuZ0lmPVwic3VmZml4SWNvblwiIChjbGljayk9XCJzdWZmaXhJY29uQ2xpY2tlZCgpXCI+e3sgc3VmZml4SWNvbiB9fTwvbWF0LWljb24+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiaGludCAmJiAhZXJyb3JcIj57eyBoaW50IH19PC9tYXQtaGludD5cbiAgICA8bWF0LWhpbnQgY2xhc3M9XCJlcnJvclwiICpuZ0lmPVwiZXJyb3JcIj57eyBlcnJvciB9fTwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Rpdj5cbiJdfQ==
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvZmllbGQvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvZmllbGQvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFjbkQsTUFBTSxPQUFPLGNBQWM7SUFrR3pCO1FBakRBOzs7OztXQUtHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFMUI7Ozs7O1dBS0c7UUFDTSxTQUFJLEdBQUcsTUFBTSxDQUFDO1FBRXZCOzs7OztXQUtHO1FBQ0gsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQVVYOzs7OztXQUtHO1FBQ0gsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEI7O1dBRUc7UUFDSCxhQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMxQjs7V0FFRztRQUNILFlBQU8sR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFSixDQUFDO0lBRWhCLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO1lBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7U0FDMUI7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7WUFDM0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM5RTtJQUNILENBQUM7OzRHQTdJVSxjQUFjO2dHQUFkLGNBQWMsbU5BUmQ7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7WUFDN0MsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDBCQ2JILGd2QkFpQkE7NEZERmEsY0FBYztrQkFaMUIsU0FBUzsrQkFDRSxVQUFVLGFBR1Q7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDOzRCQUM3QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjswRUFTUSxLQUFLO3NCQUFiLEtBQUs7Z0JBUUcsV0FBVztzQkFBbkIsS0FBSztnQkFRRyxVQUFVO3NCQUFsQixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLO2dCQVFHLEtBQUs7c0JBQWIsS0FBSztnQkFRRyxXQUFXO3NCQUFuQixLQUFLO2dCQVFHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWVsZENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBGb3JtIGZpZWxkIGxhYmVsXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogUHJlZmZpeCBpY29uIChiZWZvcmUgaW5wdXQgdGV4dClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBwcmVmZml4SWNvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdWZmaXggaWNvbiAoYWZ0ZXIgaW5wdXQgdGV4dClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzdWZmaXhJY29uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElucHV0IGlzIHJlcXVpcmVkIG9yIG5vdFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogSGludCB0ZXh0XG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgaGludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFcnJvciB0ZXh0ICh3aWxsIHJlcGxhY2UgaGludClcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBlcnJvcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBwbGFjZWhvbGRlclxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgLyoqXG4gICAqIElucHV0IHR5cGVcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpZWxkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0eXBlID0gJ3RleHQnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YWx1ZVxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIHZhbHVlID0gJyc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgaW5wdXQgaXMgZGlzYWJsZWRcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBGaWVsZENvbXBvbmVudFxuICAgKi9cbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBmaWVsZCB3aWxsIGJlIGEgcGFzc3dvcmQgaW5wdXQuIFdpbGwgd29yayBpZiBpbnB1dCB0eXBlIGlzIHNldCB0byAncGFzc3dvcmQnXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmllbGRDb21wb25lbnRcbiAgICovXG4gIHBhc3N3b3JkRmllbGQgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25DaGFuZ2UgPSAoXzogYW55KSA9PiB7fTtcbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9uVG91Y2ggPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ3Bhc3N3b3JkJykge1xuICAgICAgdGhpcy5wYXNzd29yZEZpZWxkID0gdHJ1ZTtcbiAgICAgIHRoaXMuc3VmZml4SWNvbiA9ICd2aXNpYmlsaXR5JztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25JbnB1dChldmVudDogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgfHwgJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgc3VmZml4SWNvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGFzc3dvcmRGaWVsZCkge1xuICAgICAgdGhpcy50eXBlID0gdGhpcy50eXBlID09PSAncGFzc3dvcmQnID8gJ3RleHQnIDogJ3Bhc3N3b3JkJztcbiAgICAgIHRoaXMuc3VmZml4SWNvbiA9IHRoaXMudHlwZSA9PT0gJ3Bhc3N3b3JkJyA/ICd2aXNpYmlsaXR5JyA6ICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29sdW1uXCI+XG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIFtjb2xvcl09XCJlcnJvciA/ICd3YXJuJyA6ICdwcmltYXJ5J1wiPlxuICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19IDxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbWF0LWxhYmVsPlxuICAgIDxtYXQtaWNvbiBtYXRQcmVmaXggKm5nSWY9XCJwcmVmZml4SWNvblwiPnt7IHByZWZmaXhJY29uIH19PC9tYXQtaWNvbj5cbiAgICA8aW5wdXRcbiAgICAgIG1hdElucHV0XG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgLz5cbiAgICA8bWF0LWljb24gbWF0U3VmZml4ICpuZ0lmPVwic3VmZml4SWNvblwiIChjbGljayk9XCJzdWZmaXhJY29uQ2xpY2tlZCgpXCI+e3sgc3VmZml4SWNvbiB9fTwvbWF0LWljb24+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiaGludCAmJiAhZXJyb3JcIiBbaW5uZXJIVE1MXT1cImhpbnRcIj48L21hdC1oaW50PlxuICAgIDxtYXQtaGludCBjbGFzcz1cImVycm9yXCIgKm5nSWY9XCJlcnJvclwiIFtpbm5lckhUTUxdPVwiZXJyb3JcIj48L21hdC1oaW50PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG4iXX0=
@@ -29,6 +29,13 @@ export class LabelComponent {
29
29
  * @memberof LabelComponent
30
30
  */
31
31
  this.title = '';
32
+ /**
33
+ * Status description
34
+ *
35
+ * @type {string}
36
+ * @memberof LabelComponent
37
+ */
38
+ this.description = '';
32
39
  /**
33
40
  * Label size
34
41
  *
@@ -39,17 +46,19 @@ export class LabelComponent {
39
46
  }
40
47
  }
41
48
  LabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
42
- LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LabelComponent, selector: "ui-label", inputs: { backgroundColor: "backgroundColor", textColor: "textColor", title: "title", size: "size" }, ngImport: i0, template: "<div class=\"label\"\n [ngStyle]=\"{'background-color': backgroundColor, 'color': textColor}\"\n [ngClass]=\"{'small': size === LabelSizeEnum.SMALL, 'medium': size === LabelSizeEnum.MEDIUM,\n 'large': size === LabelSizeEnum.LARGE, 'big': size === LabelSizeEnum.BIG, 'huge': size === LabelSizeEnum.HUGE}\">\n {{ title }}\n</div>\n", styles: [".label{display:flex;flex-direction:row;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;height:48px}\n"], directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
49
+ LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LabelComponent, selector: "ui-label", inputs: { backgroundColor: "backgroundColor", textColor: "textColor", title: "title", description: "description", size: "size" }, ngImport: i0, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <span>{{ title }}</span>\n <span class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\">{{ description }}</span>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"], directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LabelComponent, decorators: [{
44
51
  type: Component,
45
- args: [{ selector: 'ui-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"label\"\n [ngStyle]=\"{'background-color': backgroundColor, 'color': textColor}\"\n [ngClass]=\"{'small': size === LabelSizeEnum.SMALL, 'medium': size === LabelSizeEnum.MEDIUM,\n 'large': size === LabelSizeEnum.LARGE, 'big': size === LabelSizeEnum.BIG, 'huge': size === LabelSizeEnum.HUGE}\">\n {{ title }}\n</div>\n", styles: [".label{display:flex;flex-direction:row;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;height:48px}\n"] }]
52
+ args: [{ selector: 'ui-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <span>{{ title }}</span>\n <span class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\">{{ description }}</span>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"] }]
46
53
  }], ctorParameters: function () { return []; }, propDecorators: { backgroundColor: [{
47
54
  type: Input
48
55
  }], textColor: [{
49
56
  type: Input
50
57
  }], title: [{
51
58
  type: Input
59
+ }], description: [{
60
+ type: Input
52
61
  }], size: [{
53
62
  type: Input
54
63
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGFiZWwvbGFiZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGFiZWwvbGFiZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUTlDLE1BQU0sT0FBTyxjQUFjO0lBc0N6QjtRQXJDQTs7V0FFRztRQUNILGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBRTlCOzs7OztXQUtHO1FBQ00sb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFFOUI7Ozs7O1dBS0c7UUFDTSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBRXhCOzs7OztXQUtHO1FBQ00sVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQjs7Ozs7V0FLRztRQUNNLFNBQUksR0FBa0IsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUVwQyxDQUFDOzs0R0F0Q0wsY0FBYztnR0FBZCxjQUFjLHNKQ1QzQixxVkFNQTs0RkRHYSxjQUFjO2tCQU4xQixTQUFTOytCQUNFLFVBQVUsbUJBR0gsdUJBQXVCLENBQUMsTUFBTTswRUFjdEMsZUFBZTtzQkFBdkIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQVFHLEtBQUs7c0JBQWIsS0FBSztnQkFRRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGFiZWxTaXplRW51bSB9IGZyb20gJy4vbGFiZWwubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1sYWJlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYWJlbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xhYmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBMYWJlbENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBMYWJlbFNpemVFbnVtID0gTGFiZWxTaXplRW51bTtcblxuICAvKipcbiAgICogTGFiZWwgYmFja2dyb3VuZCBjb2xvclxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgTGFiZWxDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGJhY2tncm91bmRDb2xvciA9ICcnO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgdGV4dCBjb2xvclxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgTGFiZWxDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHRleHRDb2xvciA9ICcnO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgdGl0bGVcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIExhYmVsQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0aXRsZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBMYWJlbCBzaXplXG4gICAqXG4gICAqIEB0eXBlIHtMYWJlbFNpemVFbnVtfVxuICAgKiBAbWVtYmVyb2YgTGFiZWxDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNpemU6IExhYmVsU2l6ZUVudW0gPSBMYWJlbFNpemVFbnVtLlNNQUxMO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYWJlbFwiXG4gIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1jb2xvcic6IGJhY2tncm91bmRDb2xvciwgJ2NvbG9yJzogdGV4dENvbG9yfVwiXG4gIFtuZ0NsYXNzXT1cInsnc21hbGwnOiBzaXplID09PSBMYWJlbFNpemVFbnVtLlNNQUxMLCAnbWVkaXVtJzogc2l6ZSA9PT0gTGFiZWxTaXplRW51bS5NRURJVU0sXG4gICAgICAnbGFyZ2UnOiBzaXplID09PSBMYWJlbFNpemVFbnVtLkxBUkdFLCAnYmlnJzogc2l6ZSA9PT0gTGFiZWxTaXplRW51bS5CSUcsICdodWdlJzogc2l6ZSA9PT0gTGFiZWxTaXplRW51bS5IVUdFfVwiPlxuICAgIHt7IHRpdGxlIH19XG48L2Rpdj5cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGFiZWwvbGFiZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGFiZWwvbGFiZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUTlDLE1BQU0sT0FBTyxjQUFjO0lBOEN6QjtRQTdDQTs7V0FFRztRQUNILGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBRTlCOzs7OztXQUtHO1FBQ00sb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFFOUI7Ozs7O1dBS0c7UUFDTSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBRXhCOzs7OztXQUtHO1FBQ00sVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQjs7Ozs7V0FLRztRQUNNLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBRTFCOzs7OztXQUtHO1FBQ00sU0FBSSxHQUFrQixhQUFhLENBQUMsS0FBSyxDQUFDO0lBRXBDLENBQUM7OzRHQTlDTCxjQUFjO2dHQUFkLGNBQWMsa0xDVDNCLCtkQWNBOzRGRExhLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNOzBFQWN0QyxlQUFlO3NCQUF2QixLQUFLO2dCQVFHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUUcsS0FBSztzQkFBYixLQUFLO2dCQVFHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExhYmVsU2l6ZUVudW0gfSBmcm9tICcuL2xhYmVsLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktbGFiZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFiZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYWJlbC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGFiZWxDb21wb25lbnQge1xuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgTGFiZWxTaXplRW51bSA9IExhYmVsU2l6ZUVudW07XG5cbiAgLyoqXG4gICAqIExhYmVsIGJhY2tncm91bmQgY29sb3JcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIExhYmVsQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kQ29sb3IgPSAnJztcblxuICAvKipcbiAgICogU3RhdHVzIHRleHQgY29sb3JcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIExhYmVsQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0ZXh0Q29sb3IgPSAnJztcblxuICAvKipcbiAgICogU3RhdHVzIHRpdGxlXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBMYWJlbENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdGl0bGUgPSAnJztcblxuICAvKipcbiAgICogU3RhdHVzIGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBMYWJlbENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZGVzY3JpcHRpb24gPSAnJztcblxuICAvKipcbiAgICogTGFiZWwgc2l6ZVxuICAgKlxuICAgKiBAdHlwZSB7TGFiZWxTaXplRW51bX1cbiAgICogQG1lbWJlcm9mIExhYmVsQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzaXplOiBMYWJlbFNpemVFbnVtID0gTGFiZWxTaXplRW51bS5TTUFMTDtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibGFiZWxcIlxuICBbbmdTdHlsZV09XCJ7ICdiYWNrZ3JvdW5kLWNvbG9yJzogYmFja2dyb3VuZENvbG9yLCBjb2xvcjogdGV4dENvbG9yIH1cIlxuICBbbmdDbGFzc109XCJ7XG4gICAgc21hbGw6IHNpemUgPT09IExhYmVsU2l6ZUVudW0uU01BTEwsXG4gICAgbWVkaXVtOiBzaXplID09PSBMYWJlbFNpemVFbnVtLk1FRElVTSxcbiAgICBsYXJnZTogc2l6ZSA9PT0gTGFiZWxTaXplRW51bS5MQVJHRSxcbiAgICBiaWc6IHNpemUgPT09IExhYmVsU2l6ZUVudW0uQklHLFxuICAgIGh1Z2U6IHNpemUgPT09IExhYmVsU2l6ZUVudW0uSFVHRVxuICB9XCJcbj5cbiAgPHNwYW4+e3sgdGl0bGUgfX08L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwiZGVzY3JpcHRpb25cIiAqbmdJZj1cImRlc2NyaXB0aW9uICYmIHNpemUgPT09IExhYmVsU2l6ZUVudW0uSFVHRVwiPnt7IGRlc2NyaXB0aW9uIH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
@@ -85,10 +85,10 @@ export class LoginComponent {
85
85
  }
86
86
  }
87
87
  LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoginComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
88
- LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LoginComponent, selector: "ui-login", inputs: { loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", forgotPasswordEvent: "forgotPasswordEvent", createAccountEvent: "createAccountEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"'Log in'\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"], components: [{ type: i2.LogoComponent, selector: "ui-logo" }, { type: i3.FieldComponent, selector: "ui-field", inputs: ["label", "preffixIcon", "suffixIcon", "required", "hint", "error", "placeholder", "type"] }, { type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i5.ButtonComponent, selector: "ui-button", inputs: ["color", "label", "iconPosition", "iconName", "disabled", "loading", "fullWidth"], outputs: ["onClickEvent"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
88
+ LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LoginComponent, selector: "ui-login", inputs: { loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", forgotPasswordEvent: "forgotPasswordEvent", createAccountEvent: "createAccountEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"], components: [{ type: i2.LogoComponent, selector: "ui-logo" }, { type: i3.FieldComponent, selector: "ui-field", inputs: ["label", "preffixIcon", "suffixIcon", "required", "hint", "error", "placeholder", "type"] }, { type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i5.ButtonComponent, selector: "ui-button", inputs: ["color", "label", "iconPosition", "iconName", "disabled", "loading", "fullWidth"], outputs: ["onClickEvent"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
89
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoginComponent, decorators: [{
90
90
  type: Component,
91
- args: [{ selector: 'ui-login', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"'Log in'\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"] }]
91
+ args: [{ selector: 'ui-login', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"] }]
92
92
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { loading: [{
93
93
  type: Input
94
94
  }], i18n: [{
@@ -100,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
100
100
  }], createAccountEvent: [{
101
101
  type: Output
102
102
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBUzlDLE1BQU0sT0FBTyxjQUFjO0lBd0R6QixZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQXZEbkMsbUhBQW1IO1FBQ25ILHdEQUF3RDtRQUN4RCx3REFBd0Q7UUFFeEQ7O1dBRUc7UUFDSCxjQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEQsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQztTQUNyQixDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNILGVBQVUsR0FBRztZQUNYLEtBQUssRUFBRSxFQUFFO1lBQ1QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO1FBRUY7Ozs7V0FJRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFekI7Ozs7V0FJRztRQUNNLFNBQUksR0FBZSxVQUFVLENBQUM7UUFFdkM7O1dBRUc7UUFDTyxnQkFBVyxHQUFtQyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUU3Rjs7V0FFRztRQUNPLHdCQUFtQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTdFOztXQUVHO1FBQ08sdUJBQWtCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFPdEMsQ0FBQztJQUx2Qzs7T0FFRztJQUNILFFBQVEsS0FBVSxDQUFDO0lBSW5CLE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztZQUNwQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSztZQUM1QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSztZQUMvQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSztTQUN0RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEVBQUU7WUFDMUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ3ZELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBcUMsQ0FBQyxHQUFHLHdCQUF3QixDQUFDO2dCQUNsRixPQUFPO2FBQ1I7WUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFxQyxDQUFDLEdBQUcscUJBQXFCLENBQUM7Z0JBQy9FLE9BQU87YUFDUjtTQUNGO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFxQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzlELENBQUM7OzRHQXhGVSxjQUFjO2dHQUFkLGNBQWMsNk5DWDNCLHc3Q0E2Q0E7NEZEbENhLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNO2tHQTZCdEMsT0FBTztzQkFBZixLQUFLO2dCQU9HLElBQUk7c0JBQVosS0FBSztnQkFLSSxXQUFXO3NCQUFwQixNQUFNO2dCQUtHLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFLRyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBMT0dJTl9pMThuIH0gZnJvbSAnLi9sb2dpbi5jb25zdGFudCc7XG5pbXBvcnQgeyBJaTE4bkxvZ2luLCBMb2dpbkNyZWRlbnRpYWxzIH0gZnJvbSAnLi9sb2dpbi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWxvZ2luJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbG9naW4uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gVE9ETzogU29tZSBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzIGFyZSBpZ25vcmVkIG9uIHB1cnBvc2UgYmVjYXVzZSBvZiBhIGN1cnJlbnQgaXNzdWUgd2l0aCBjb21wb2RvYyBhbmQgYW5ndWxhciAxM1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vc3Rvcnlib29ranMvc3Rvcnlib29rL2lzc3Vlcy8xNjg2NVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vc3Rvcnlib29ranMvc3Rvcnlib29rL2lzc3Vlcy8xNzAwNFxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBsb2dpbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICBlbWFpbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbF1dLFxuICAgIHBhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgcmVtZW1iZXJfbWU6IFtmYWxzZV0sXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBmb3JtRXJyb3JzID0ge1xuICAgIGVtYWlsOiAnJyxcbiAgICBwYXNzd29yZDogJycsXG4gIH07XG5cbiAgLyoqXG4gICAqIEluZGljYXRvciBpZiB0aGUgZm9ybSBpcyBsb2FkaW5nXG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE9iamVjdCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMgZm9yIHRoZSBjb21wb25lbnQuXG4gICAqIEB0eXBlIHtJaTE4bn1cbiAgICogQG1lbWJlcm9mIExvZ2luQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpMThuOiBJaTE4bkxvZ2luID0gTE9HSU5faTE4bjtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQE91dHB1dCgpIHN1Ym1pdEV2ZW50OiBFdmVudEVtaXR0ZXI8TG9naW5DcmVkZW50aWFscz4gPSBuZXcgRXZlbnRFbWl0dGVyPExvZ2luQ3JlZGVudGlhbHM+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBmb3Jnb3RQYXNzd29yZEV2ZW50OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBjcmVhdGVBY2NvdW50RXZlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7fVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLnN1Ym1pdEV2ZW50LmVtaXQoe1xuICAgICAgdXNlcm5hbWU6IHRoaXMubG9naW5Gb3JtLmdldCgnZW1haWwnKT8udmFsdWUsXG4gICAgICBwYXNzd29yZDogdGhpcy5sb2dpbkZvcm0uZ2V0KCdwYXNzd29yZCcpPy52YWx1ZSxcbiAgICAgIHJlbWVtYmVyX21lOiB0aGlzLmxvZ2luRm9ybS5nZXQoJ3JlbWVtYmVyX21lJyk/LnZhbHVlLFxuICAgIH0pO1xuICB9XG5cbiAgZm9yZ290UGFzc3dvcmQoKSB7XG4gICAgdGhpcy5mb3Jnb3RQYXNzd29yZEV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIGNyZWF0ZUFjY291bnQoKSB7XG4gICAgdGhpcy5jcmVhdGVBY2NvdW50RXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgY2hlY2tFcnJvcnMoZmllbGQ6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmxvZ2luRm9ybS5jb250cm9sc1tmaWVsZF0udG91Y2hlZCkge1xuICAgICAgaWYgKHRoaXMubG9naW5Gb3JtLmNvbnRyb2xzW2ZpZWxkXS5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgICAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnVGhpcyBmaWVsZCBpcyByZXF1aXJlZCc7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMubG9naW5Gb3JtLmNvbnRyb2xzW2ZpZWxkXS5oYXNFcnJvcignZW1haWwnKSkge1xuICAgICAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnRW50ZXIgYSB2YWxpZCBlbWFpbCc7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZvcm0tYm94XCI+XG4gIDx1aS1sb2dvPjwvdWktbG9nbz5cbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgaTE4bi50aXRsZSB9fTwvZGl2PlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImxvZ2luRm9ybVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgPHVpLWZpZWxkXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImkxOG4uZW1haWxfcGxhY2Vob2xkZXJcIlxuICAgICAgICBbdHlwZV09XCInZW1haWwnXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICBbZXJyb3JdPVwiZm9ybUVycm9ycy5lbWFpbFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoZWNrRXJyb3JzKCdlbWFpbCcpXCJcbiAgICAgID48L3VpLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgPHVpLWZpZWxkXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImkxOG4ucGFzc3dvcmRfcGxhY2Vob2xkZXJcIlxuICAgICAgICBbdHlwZV09XCIncGFzc3dvcmQnXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICBbZXJyb3JdPVwiZm9ybUVycm9ycy5wYXNzd29yZFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoZWNrRXJyb3JzKCdwYXNzd29yZCcpXCJcbiAgICAgID48L3VpLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyb3cgc3BhY2UtYmV0d2VlblwiPlxuICAgICAgPGRpdj5cbiAgICAgICAgPG1hdC1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9XCJyZW1lbWJlcl9tZVwiPnt7IGkxOG4ucmVtZW1iZXJfbWUgfX08L21hdC1jaGVja2JveD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZvcmdvdC1wYXNzd29yZFwiIChjbGljayk9XCJmb3Jnb3RQYXNzd29yZCgpXCI+e3sgaTE4bi5mb3Jnb3RfcGFzc3dvcmQgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic3VibWl0LWJ1dHRvblwiPlxuICAgICAgPHVpLWJ1dHRvblxuICAgICAgICBbbGFiZWxdPVwiJ0xvZyBpbidcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibG9naW5Gb3JtLmludmFsaWRcIlxuICAgICAgICBbZnVsbFdpZHRoXT1cInRydWVcIlxuICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgKG9uQ2xpY2tFdmVudCk9XCJzdWJtaXQoKVwiXG4gICAgICA+PC91aS1idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIHt7IGkxOG4ubm90X2hhdmVfYWNjb3VudCB9fVxuICAgICAgPHNwYW4gY2xhc3M9XCJjcmVhdGUtYWNjb3VudFwiIChjbGljayk9XCJjcmVhdGVBY2NvdW50KClcIj57eyBpMThuLmNyZWF0ZV9hY2NvdW50IH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L2Rpdj5cbiJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBUzlDLE1BQU0sT0FBTyxjQUFjO0lBd0R6QixZQUFvQixFQUFlO1FBQWYsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQXZEbkMsbUhBQW1IO1FBQ25ILHdEQUF3RDtRQUN4RCx3REFBd0Q7UUFFeEQ7O1dBRUc7UUFDSCxjQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEQsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQztTQUNyQixDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNILGVBQVUsR0FBRztZQUNYLEtBQUssRUFBRSxFQUFFO1lBQ1QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO1FBRUY7Ozs7V0FJRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFekI7Ozs7V0FJRztRQUNNLFNBQUksR0FBZSxVQUFVLENBQUM7UUFFdkM7O1dBRUc7UUFDTyxnQkFBVyxHQUFtQyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUU3Rjs7V0FFRztRQUNPLHdCQUFtQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTdFOztXQUVHO1FBQ08sdUJBQWtCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFPdEMsQ0FBQztJQUx2Qzs7T0FFRztJQUNILFFBQVEsS0FBVSxDQUFDO0lBSW5CLE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztZQUNwQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSztZQUM1QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSztZQUMvQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSztTQUN0RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEVBQUU7WUFDMUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ3ZELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBcUMsQ0FBQyxHQUFHLHdCQUF3QixDQUFDO2dCQUNsRixPQUFPO2FBQ1I7WUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFxQyxDQUFDLEdBQUcscUJBQXFCLENBQUM7Z0JBQy9FLE9BQU87YUFDUjtTQUNGO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFxQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzlELENBQUM7OzRHQXhGVSxjQUFjO2dHQUFkLGNBQWMsNk5DWDNCLGk4Q0E2Q0E7NEZEbENhLGNBQWM7a0JBTjFCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNO2tHQTZCdEMsT0FBTztzQkFBZixLQUFLO2dCQU9HLElBQUk7c0JBQVosS0FBSztnQkFLSSxXQUFXO3NCQUFwQixNQUFNO2dCQUtHLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFLRyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBMT0dJTl9pMThuIH0gZnJvbSAnLi9sb2dpbi5jb25zdGFudCc7XG5pbXBvcnQgeyBJaTE4bkxvZ2luLCBMb2dpbkNyZWRlbnRpYWxzIH0gZnJvbSAnLi9sb2dpbi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWxvZ2luJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbG9naW4uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gVE9ETzogU29tZSBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzIGFyZSBpZ25vcmVkIG9uIHB1cnBvc2UgYmVjYXVzZSBvZiBhIGN1cnJlbnQgaXNzdWUgd2l0aCBjb21wb2RvYyBhbmQgYW5ndWxhciAxM1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vc3Rvcnlib29ranMvc3Rvcnlib29rL2lzc3Vlcy8xNjg2NVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vc3Rvcnlib29ranMvc3Rvcnlib29rL2lzc3Vlcy8xNzAwNFxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBsb2dpbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICBlbWFpbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbF1dLFxuICAgIHBhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgcmVtZW1iZXJfbWU6IFtmYWxzZV0sXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBmb3JtRXJyb3JzID0ge1xuICAgIGVtYWlsOiAnJyxcbiAgICBwYXNzd29yZDogJycsXG4gIH07XG5cbiAgLyoqXG4gICAqIEluZGljYXRvciBpZiB0aGUgZm9ybSBpcyBsb2FkaW5nXG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE9iamVjdCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMgZm9yIHRoZSBjb21wb25lbnQuXG4gICAqIEB0eXBlIHtJaTE4bn1cbiAgICogQG1lbWJlcm9mIExvZ2luQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpMThuOiBJaTE4bkxvZ2luID0gTE9HSU5faTE4bjtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQE91dHB1dCgpIHN1Ym1pdEV2ZW50OiBFdmVudEVtaXR0ZXI8TG9naW5DcmVkZW50aWFscz4gPSBuZXcgRXZlbnRFbWl0dGVyPExvZ2luQ3JlZGVudGlhbHM+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBmb3Jnb3RQYXNzd29yZEV2ZW50OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBjcmVhdGVBY2NvdW50RXZlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7fVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLnN1Ym1pdEV2ZW50LmVtaXQoe1xuICAgICAgdXNlcm5hbWU6IHRoaXMubG9naW5Gb3JtLmdldCgnZW1haWwnKT8udmFsdWUsXG4gICAgICBwYXNzd29yZDogdGhpcy5sb2dpbkZvcm0uZ2V0KCdwYXNzd29yZCcpPy52YWx1ZSxcbiAgICAgIHJlbWVtYmVyX21lOiB0aGlzLmxvZ2luRm9ybS5nZXQoJ3JlbWVtYmVyX21lJyk/LnZhbHVlLFxuICAgIH0pO1xuICB9XG5cbiAgZm9yZ290UGFzc3dvcmQoKSB7XG4gICAgdGhpcy5mb3Jnb3RQYXNzd29yZEV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIGNyZWF0ZUFjY291bnQoKSB7XG4gICAgdGhpcy5jcmVhdGVBY2NvdW50RXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgY2hlY2tFcnJvcnMoZmllbGQ6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmxvZ2luRm9ybS5jb250cm9sc1tmaWVsZF0udG91Y2hlZCkge1xuICAgICAgaWYgKHRoaXMubG9naW5Gb3JtLmNvbnRyb2xzW2ZpZWxkXS5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgICAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnVGhpcyBmaWVsZCBpcyByZXF1aXJlZCc7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMubG9naW5Gb3JtLmNvbnRyb2xzW2ZpZWxkXS5oYXNFcnJvcignZW1haWwnKSkge1xuICAgICAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnRW50ZXIgYSB2YWxpZCBlbWFpbCc7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmZvcm1FcnJvcnNbZmllbGQgYXMga2V5b2YgdHlwZW9mIHRoaXMuZm9ybUVycm9yc10gPSAnJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZvcm0tYm94XCI+XG4gIDx1aS1sb2dvPjwvdWktbG9nbz5cbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgaTE4bi50aXRsZSB9fTwvZGl2PlxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImxvZ2luRm9ybVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgPHVpLWZpZWxkXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImkxOG4uZW1haWxfcGxhY2Vob2xkZXJcIlxuICAgICAgICBbdHlwZV09XCInZW1haWwnXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICBbZXJyb3JdPVwiZm9ybUVycm9ycy5lbWFpbFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoZWNrRXJyb3JzKCdlbWFpbCcpXCJcbiAgICAgID48L3VpLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgPHVpLWZpZWxkXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImkxOG4ucGFzc3dvcmRfcGxhY2Vob2xkZXJcIlxuICAgICAgICBbdHlwZV09XCIncGFzc3dvcmQnXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICBbZXJyb3JdPVwiZm9ybUVycm9ycy5wYXNzd29yZFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoZWNrRXJyb3JzKCdwYXNzd29yZCcpXCJcbiAgICAgID48L3VpLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyb3cgc3BhY2UtYmV0d2VlblwiPlxuICAgICAgPGRpdj5cbiAgICAgICAgPG1hdC1jaGVja2JveCBmb3JtQ29udHJvbE5hbWU9XCJyZW1lbWJlcl9tZVwiPnt7IGkxOG4ucmVtZW1iZXJfbWUgfX08L21hdC1jaGVja2JveD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZvcmdvdC1wYXNzd29yZFwiIChjbGljayk9XCJmb3Jnb3RQYXNzd29yZCgpXCI+e3sgaTE4bi5mb3Jnb3RfcGFzc3dvcmQgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic3VibWl0LWJ1dHRvblwiPlxuICAgICAgPHVpLWJ1dHRvblxuICAgICAgICBbbGFiZWxdPVwiaTE4bi5idXR0b25fbGFiZWxcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibG9naW5Gb3JtLmludmFsaWRcIlxuICAgICAgICBbZnVsbFdpZHRoXT1cInRydWVcIlxuICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgKG9uQ2xpY2tFdmVudCk9XCJzdWJtaXQoKVwiXG4gICAgICA+PC91aS1idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIHt7IGkxOG4ubm90X2hhdmVfYWNjb3VudCB9fVxuICAgICAgPHNwYW4gY2xhc3M9XCJjcmVhdGUtYWNjb3VudFwiIChjbGljayk9XCJjcmVhdGVBY2NvdW50KClcIj57eyBpMThuLmNyZWF0ZV9hY2NvdW50IH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Zvcm0+XG48L2Rpdj5cbiJdfQ==
@@ -4,7 +4,8 @@ export const LOGIN_i18n = {
4
4
  password_placeholder: 'Password',
5
5
  remember_me: 'Keep me logged in',
6
6
  forgot_password: 'Forgot password?',
7
+ button_label: 'Log in',
7
8
  not_have_account: "Don't have an account?",
8
9
  create_account: 'Create one here',
9
10
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsS0FBSyxFQUFFLGdDQUFnQztJQUN2QyxpQkFBaUIsRUFBRSxlQUFlO0lBQ2xDLG9CQUFvQixFQUFFLFVBQVU7SUFDaEMsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxlQUFlLEVBQUUsa0JBQWtCO0lBQ25DLGdCQUFnQixFQUFFLHdCQUF3QjtJQUMxQyxjQUFjLEVBQUUsaUJBQWlCO0NBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTE9HSU5faTE4biA9IHtcbiAgdGl0bGU6ICdMb2cgaW4gdG8geW91ciBDYXJlZXIgUGFzc3BvcnQnLFxuICBlbWFpbF9wbGFjZWhvbGRlcjogJ0VtYWlsIGFkZHJlc3MnLFxuICBwYXNzd29yZF9wbGFjZWhvbGRlcjogJ1Bhc3N3b3JkJyxcbiAgcmVtZW1iZXJfbWU6ICdLZWVwIG1lIGxvZ2dlZCBpbicsXG4gIGZvcmdvdF9wYXNzd29yZDogJ0ZvcmdvdCBwYXNzd29yZD8nLFxuICBub3RfaGF2ZV9hY2NvdW50OiBcIkRvbid0IGhhdmUgYW4gYWNjb3VudD9cIixcbiAgY3JlYXRlX2FjY291bnQ6ICdDcmVhdGUgb25lIGhlcmUnLFxufTtcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsS0FBSyxFQUFFLGdDQUFnQztJQUN2QyxpQkFBaUIsRUFBRSxlQUFlO0lBQ2xDLG9CQUFvQixFQUFFLFVBQVU7SUFDaEMsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxlQUFlLEVBQUUsa0JBQWtCO0lBQ25DLFlBQVksRUFBRSxRQUFRO0lBQ3RCLGdCQUFnQixFQUFFLHdCQUF3QjtJQUMxQyxjQUFjLEVBQUUsaUJBQWlCO0NBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTE9HSU5faTE4biA9IHtcbiAgdGl0bGU6ICdMb2cgaW4gdG8geW91ciBDYXJlZXIgUGFzc3BvcnQnLFxuICBlbWFpbF9wbGFjZWhvbGRlcjogJ0VtYWlsIGFkZHJlc3MnLFxuICBwYXNzd29yZF9wbGFjZWhvbGRlcjogJ1Bhc3N3b3JkJyxcbiAgcmVtZW1iZXJfbWU6ICdLZWVwIG1lIGxvZ2dlZCBpbicsXG4gIGZvcmdvdF9wYXNzd29yZDogJ0ZvcmdvdCBwYXNzd29yZD8nLFxuICBidXR0b25fbGFiZWw6ICdMb2cgaW4nLFxuICBub3RfaGF2ZV9hY2NvdW50OiBcIkRvbid0IGhhdmUgYW4gYWNjb3VudD9cIixcbiAgY3JlYXRlX2FjY291bnQ6ICdDcmVhdGUgb25lIGhlcmUnLFxufTtcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBMb2dpbkNyZWRlbnRpYWxzIHtcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgcmVtZW1iZXJfbWU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWkxOG5Mb2dpbiB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGVtYWlsX3BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHBhc3N3b3JkX3BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlbWVtYmVyX21lOiBzdHJpbmc7XG4gIGZvcmdvdF9wYXNzd29yZDogc3RyaW5nO1xuICBub3RfaGF2ZV9hY2NvdW50OiBzdHJpbmc7XG4gIGNyZWF0ZV9hY2NvdW50OiBzdHJpbmc7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBMb2dpbkNyZWRlbnRpYWxzIHtcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgcmVtZW1iZXJfbWU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWkxOG5Mb2dpbiB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGVtYWlsX3BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHBhc3N3b3JkX3BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlbWVtYmVyX21lOiBzdHJpbmc7XG4gIGZvcmdvdF9wYXNzd29yZDogc3RyaW5nO1xuICBidXR0b25fbGFiZWw6IHN0cmluZztcbiAgbm90X2hhdmVfYWNjb3VudDogc3RyaW5nO1xuICBjcmVhdGVfYWNjb3VudDogc3RyaW5nO1xufVxuIl19
@@ -16,7 +16,7 @@ export class NavigationComponent {
16
16
  }
17
17
  }
18
18
  NavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
- NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NavigationComponent, selector: "ui-navigation", inputs: { title: "title", subtitle: "subtitle", labelItem: "labelItem" }, outputs: { goBackClickedEvent: "goBackClickedEvent" }, ngImport: i0, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.LabelComponent, selector: "ui-label", inputs: ["backgroundColor", "textColor", "title", "size"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
19
+ NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NavigationComponent, selector: "ui-navigation", inputs: { title: "title", subtitle: "subtitle", labelItem: "labelItem" }, outputs: { goBackClickedEvent: "goBackClickedEvent" }, ngImport: i0, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.LabelComponent, selector: "ui-label", inputs: ["backgroundColor", "textColor", "title", "description", "size"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
20
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{ selector: 'ui-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"] }]
@@ -247,10 +247,10 @@ class CardComponent {
247
247
  }
248
248
  }
249
249
  CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
250
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardComponent, selector: "ui-card", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"], components: [{ type: i1$1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: LogoComponent, selector: "ui-logo" }], directives: [{ type: i1$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i1$1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
250
+ CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CardComponent, selector: "ui-card", inputs: { title: "title", subTitle: "subTitle" }, ngImport: i0, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"], components: [{ type: i1$1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: LogoComponent, selector: "ui-logo" }], directives: [{ type: i1$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i1$1.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
251
251
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CardComponent, decorators: [{
252
252
  type: Component,
253
- args: [{ selector: 'ui-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"] }]
253
+ args: [{ selector: 'ui-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"container\">\n <ui-logo class=\"logo\"></ui-logo>\n <mat-card-title>{{title}}</mat-card-title>\n <mat-card-subtitle>{{subTitle}}</mat-card-subtitle>\n</mat-card>\n", styles: [".container{width:672px;box-sizing:border-box;padding:80px!important}.container .logo{margin-bottom:40px}.container .mat-card-title{margin-bottom:24px;font-weight:700;font-size:22px;line-height:135%;width:100%;word-wrap:break-word}.container .mat-card-subtitle{color:#000;font-weight:400;font-size:16px;line-height:135%}\n"] }]
254
254
  }], propDecorators: { title: [{
255
255
  type: Input
256
256
  }], subTitle: [{
@@ -380,7 +380,7 @@ FieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version
380
380
  useExisting: forwardRef(() => FieldComponent),
381
381
  multi: true,
382
382
  },
383
- ], ngImport: i0, template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\">{{ error }}</mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.column{display:flex;flex-direction:column}\n"], components: [{ type: i1$2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.MatLabel, selector: "mat-label" }, { type: i1$2.MatPrefix, selector: "[matPrefix]" }, { type: i4$1.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"] }, { type: i1$2.MatSuffix, selector: "[matSuffix]" }, { type: i1$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }] });
383
+ ], ngImport: i0, template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\" [innerHTML]=\"hint\"></mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\" [innerHTML]=\"error\"></mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.mat-form-field .error ::ng-deep a{color:#46a997;text-decoration:none}.column{display:flex;flex-direction:column}\n"], components: [{ type: i1$2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.MatLabel, selector: "mat-label" }, { type: i1$2.MatPrefix, selector: "[matPrefix]" }, { type: i4$1.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"] }, { type: i1$2.MatSuffix, selector: "[matSuffix]" }, { type: i1$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }] });
384
384
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FieldComponent, decorators: [{
385
385
  type: Component,
386
386
  args: [{ selector: 'ui-field', providers: [
@@ -389,7 +389,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
389
389
  useExisting: forwardRef(() => FieldComponent),
390
390
  multi: true,
391
391
  },
392
- ], template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\">{{ error }}</mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.column{display:flex;flex-direction:column}\n"] }]
392
+ ], template: "<div class=\"column\">\n <mat-form-field appearance=\"outline\" [color]=\"error ? 'warn' : 'primary'\">\n <mat-label *ngIf=\"label\">{{ label }} <span *ngIf=\"required\">*</span></mat-label>\n <mat-icon matPrefix *ngIf=\"preffixIcon\">{{ preffixIcon }}</mat-icon>\n <input\n matInput\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [disabled]=\"isDisabled\"\n [type]=\"type\"\n (input)=\"onInput($event)\"\n />\n <mat-icon matSuffix *ngIf=\"suffixIcon\" (click)=\"suffixIconClicked()\">{{ suffixIcon }}</mat-icon>\n <mat-hint *ngIf=\"hint && !error\" [innerHTML]=\"hint\"></mat-hint>\n <mat-hint class=\"error\" *ngIf=\"error\" [innerHTML]=\"error\"></mat-hint>\n </mat-form-field>\n</div>\n", styles: [".mat-form-field{margin-top:0}.mat-form-field .mat-input-element{height:20px}.mat-form-field .mat-input-element,.mat-form-field .mat-icon{position:relative;bottom:3px}.mat-form-field .error{color:#cb7b7a}.mat-form-field .error ::ng-deep a{color:#46a997;text-decoration:none}.column{display:flex;flex-direction:column}\n"] }]
393
393
  }], ctorParameters: function () { return []; }, propDecorators: { label: [{
394
394
  type: Input
395
395
  }], preffixIcon: [{
@@ -925,6 +925,13 @@ class LabelComponent {
925
925
  * @memberof LabelComponent
926
926
  */
927
927
  this.title = '';
928
+ /**
929
+ * Status description
930
+ *
931
+ * @type {string}
932
+ * @memberof LabelComponent
933
+ */
934
+ this.description = '';
928
935
  /**
929
936
  * Label size
930
937
  *
@@ -935,16 +942,18 @@ class LabelComponent {
935
942
  }
936
943
  }
937
944
  LabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
938
- LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LabelComponent, selector: "ui-label", inputs: { backgroundColor: "backgroundColor", textColor: "textColor", title: "title", size: "size" }, ngImport: i0, template: "<div class=\"label\"\n [ngStyle]=\"{'background-color': backgroundColor, 'color': textColor}\"\n [ngClass]=\"{'small': size === LabelSizeEnum.SMALL, 'medium': size === LabelSizeEnum.MEDIUM,\n 'large': size === LabelSizeEnum.LARGE, 'big': size === LabelSizeEnum.BIG, 'huge': size === LabelSizeEnum.HUGE}\">\n {{ title }}\n</div>\n", styles: [".label{display:flex;flex-direction:row;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;height:48px}\n"], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
945
+ LabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LabelComponent, selector: "ui-label", inputs: { backgroundColor: "backgroundColor", textColor: "textColor", title: "title", description: "description", size: "size" }, ngImport: i0, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <span>{{ title }}</span>\n <span class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\">{{ description }}</span>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
939
946
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LabelComponent, decorators: [{
940
947
  type: Component,
941
- args: [{ selector: 'ui-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"label\"\n [ngStyle]=\"{'background-color': backgroundColor, 'color': textColor}\"\n [ngClass]=\"{'small': size === LabelSizeEnum.SMALL, 'medium': size === LabelSizeEnum.MEDIUM,\n 'large': size === LabelSizeEnum.LARGE, 'big': size === LabelSizeEnum.BIG, 'huge': size === LabelSizeEnum.HUGE}\">\n {{ title }}\n</div>\n", styles: [".label{display:flex;flex-direction:row;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;height:48px}\n"] }]
948
+ args: [{ selector: 'ui-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"label\"\n [ngStyle]=\"{ 'background-color': backgroundColor, color: textColor }\"\n [ngClass]=\"{\n small: size === LabelSizeEnum.SMALL,\n medium: size === LabelSizeEnum.MEDIUM,\n large: size === LabelSizeEnum.LARGE,\n big: size === LabelSizeEnum.BIG,\n huge: size === LabelSizeEnum.HUGE\n }\"\n>\n <span>{{ title }}</span>\n <span class=\"description\" *ngIf=\"description && size === LabelSizeEnum.HUGE\">{{ description }}</span>\n</div>\n", styles: [".label{display:flex;flex-direction:column;justify-content:center;align-items:center;font-weight:600;border-radius:4px;width:-moz-fit-content;width:fit-content}.label.small{padding:0 8px;font-size:10px;height:16px}.label.medium{padding:2px 8px;font-size:12px;height:20px}.label.large{padding:8px 12px;font-size:14px;height:32px}.label.big{padding:8px 16px;font-size:14px;height:32px}.label.huge{padding:16px;font-size:12px;font-weight:700;min-height:48px;width:100%;max-width:166px;align-items:start}.label.huge .description{font-weight:400;font-size:12px;line-height:16px;padding-top:10px}\n"] }]
942
949
  }], ctorParameters: function () { return []; }, propDecorators: { backgroundColor: [{
943
950
  type: Input
944
951
  }], textColor: [{
945
952
  type: Input
946
953
  }], title: [{
947
954
  type: Input
955
+ }], description: [{
956
+ type: Input
948
957
  }], size: [{
949
958
  type: Input
950
959
  }] } });
@@ -970,6 +979,7 @@ const LOGIN_i18n = {
970
979
  password_placeholder: 'Password',
971
980
  remember_me: 'Keep me logged in',
972
981
  forgot_password: 'Forgot password?',
982
+ button_label: 'Log in',
973
983
  not_have_account: "Don't have an account?",
974
984
  create_account: 'Create one here',
975
985
  };
@@ -1053,10 +1063,10 @@ class LoginComponent {
1053
1063
  }
1054
1064
  }
1055
1065
  LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoginComponent, deps: [{ token: i1$3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
1056
- LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LoginComponent, selector: "ui-login", inputs: { loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", forgotPasswordEvent: "forgotPasswordEvent", createAccountEvent: "createAccountEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"'Log in'\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"], components: [{ type: LogoComponent, selector: "ui-logo" }, { type: FieldComponent, selector: "ui-field", inputs: ["label", "preffixIcon", "suffixIcon", "required", "hint", "error", "placeholder", "type"] }, { type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: ButtonComponent, selector: "ui-button", inputs: ["color", "label", "iconPosition", "iconName", "disabled", "loading", "fullWidth"], outputs: ["onClickEvent"] }], directives: [{ type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1066
+ LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LoginComponent, selector: "ui-login", inputs: { loading: "loading", i18n: "i18n" }, outputs: { submitEvent: "submitEvent", forgotPasswordEvent: "forgotPasswordEvent", createAccountEvent: "createAccountEvent" }, ngImport: i0, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"], components: [{ type: LogoComponent, selector: "ui-logo" }, { type: FieldComponent, selector: "ui-field", inputs: ["label", "preffixIcon", "suffixIcon", "required", "hint", "error", "placeholder", "type"] }, { type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: ButtonComponent, selector: "ui-button", inputs: ["color", "label", "iconPosition", "iconName", "disabled", "loading", "fullWidth"], outputs: ["onClickEvent"] }], directives: [{ type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1057
1067
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoginComponent, decorators: [{
1058
1068
  type: Component,
1059
- args: [{ selector: 'ui-login', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"'Log in'\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"] }]
1069
+ args: [{ selector: 'ui-login', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"form-box\">\n <ui-logo></ui-logo>\n <div class=\"title\">{{ i18n.title }}</div>\n <form [formGroup]=\"loginForm\">\n <div class=\"field\">\n <ui-field\n formControlName=\"email\"\n [placeholder]=\"i18n.email_placeholder\"\n [type]=\"'email'\"\n [required]=\"true\"\n [error]=\"formErrors.email\"\n (ngModelChange)=\"checkErrors('email')\"\n ></ui-field>\n </div>\n <div class=\"field\">\n <ui-field\n formControlName=\"password\"\n [placeholder]=\"i18n.password_placeholder\"\n [type]=\"'password'\"\n [required]=\"true\"\n [error]=\"formErrors.password\"\n (ngModelChange)=\"checkErrors('password')\"\n ></ui-field>\n </div>\n <div class=\"row space-between\">\n <div>\n <mat-checkbox formControlName=\"remember_me\">{{ i18n.remember_me }}</mat-checkbox>\n </div>\n <div class=\"forgot-password\" (click)=\"forgotPassword()\">{{ i18n.forgot_password }}</div>\n </div>\n <div class=\"submit-button\">\n <ui-button\n [label]=\"i18n.button_label\"\n [disabled]=\"loginForm.invalid\"\n [fullWidth]=\"true\"\n [loading]=\"loading\"\n (onClickEvent)=\"submit()\"\n ></ui-button>\n </div>\n <div>\n {{ i18n.not_have_account }}\n <span class=\"create-account\" (click)=\"createAccount()\">{{ i18n.create_account }}</span>\n </div>\n </form>\n</div>\n", styles: [".form-box{width:672px;padding:64px;background:#ffffff;box-shadow:0 8px 16px #0000001a;border-radius:8px;margin:auto;color:#000}.form-box .title{font-weight:700;font-size:22px;line-height:29.7px;margin:40px 0 24px}.form-box .field{width:100%}.form-box .submit-button{margin:40px 0 24px}.form-box mat-checkbox{font-weight:400}.form-box .forgot-password,.form-box .create-account{font-weight:600;font-size:15px;cursor:pointer}.form-box .forgot-password:hover,.form-box .create-account:hover{text-decoration:underline}.form-box .create-account{color:#46a997}.row{display:flex;flex-direction:row;margin-top:3px}.row.space-between{justify-content:space-between}\n"] }]
1060
1070
  }], ctorParameters: function () { return [{ type: i1$3.FormBuilder }]; }, propDecorators: { loading: [{
1061
1071
  type: Input
1062
1072
  }], i18n: [{
@@ -1215,7 +1225,7 @@ class NavigationComponent {
1215
1225
  }
1216
1226
  }
1217
1227
  NavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1218
- NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NavigationComponent, selector: "ui-navigation", inputs: { title: "title", subtitle: "subtitle", labelItem: "labelItem" }, outputs: { goBackClickedEvent: "goBackClickedEvent" }, ngImport: i0, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: LabelComponent, selector: "ui-label", inputs: ["backgroundColor", "textColor", "title", "size"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1228
+ NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NavigationComponent, selector: "ui-navigation", inputs: { title: "title", subtitle: "subtitle", labelItem: "labelItem" }, outputs: { goBackClickedEvent: "goBackClickedEvent" }, ngImport: i0, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: LabelComponent, selector: "ui-label", inputs: ["backgroundColor", "textColor", "title", "description", "size"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1219
1229
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationComponent, decorators: [{
1220
1230
  type: Component,
1221
1231
  args: [{ selector: 'ui-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navigation\">\n <button mat-icon-button (click)=\"goBackClicked()\">\n <mat-icon>arrow_back</mat-icon>\n </button>\n <div class=\"content\">\n <div class=\"title\">\n <span>{{ title }}</span>\n <div class=\"status\" *ngIf=\"labelItem\">\n <ui-label [backgroundColor]=\"labelItem.backgroundColor\" [textColor]=\"labelItem.textColor\"\n [title]=\"labelItem.title\" [size]=\"labelItem.size\">\n </ui-label>\n </div>\n </div>\n <div class=\"subtitle\">\n {{ subtitle }}\n </div>\n </div>\n</div>\n", styles: [".navigation{width:100%;display:flex;align-items:center}.navigation mat-icon{color:#000}.navigation .content{margin-left:32px;display:flex;flex-direction:column}.navigation .content .title{color:#000;font-weight:700;font-size:20px;display:flex;align-items:center;margin-bottom:8px}.navigation .content .title .status{margin-left:8px}.navigation .content .subtitle{color:#528593;font-weight:700;font-size:14px}\n"] }]