lib-portal-angular 0.0.22 → 0.0.23

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,135 @@
1
+ import { ChangeDetectionStrategy, Component, forwardRef, Input } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import Brazilian from 'flatpickr/dist/l10n/pt.js'; // Importa a localização brasileira
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@angular/forms";
7
+ import * as i3 from "angularx-flatpickr";
8
+ export class CalendarComponent {
9
+ constructor() {
10
+ this.inputId = 'startDate';
11
+ this.label = 'Event Start Date';
12
+ this.placeholder = 'Not set';
13
+ this.marginTop = 0;
14
+ this.marginBottom = 0;
15
+ this.marginLeft = 0;
16
+ this.marginRight = 0;
17
+ this.altInput = true;
18
+ this.convertModelValue = true;
19
+ this.enableTime = true;
20
+ this.dateFormat = 'd/m/Y H:i';
21
+ this.altFormat = 'd/m/Y';
22
+ this.locale = Brazilian.pt; // Define o idioma como brasileiro por padrão
23
+ this.onChange = (_) => { };
24
+ this.onTouched = () => { };
25
+ }
26
+ ngOnInit() {
27
+ // Any necessary initialization
28
+ }
29
+ writeValue(value) {
30
+ this.value = value;
31
+ }
32
+ registerOnChange(fn) {
33
+ this.onChange = fn;
34
+ }
35
+ registerOnTouched(fn) {
36
+ this.onTouched = fn;
37
+ }
38
+ onNgModelChange(event) {
39
+ this.onChange(event);
40
+ this.onTouched();
41
+ }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CalendarComponent, selector: "sim-advanced-calendar", inputs: { inputId: "inputId", label: "label", placeholder: "placeholder", marginTop: "marginTop", marginBottom: "marginBottom", marginLeft: "marginLeft", marginRight: "marginRight", altInput: "altInput", convertModelValue: "convertModelValue", enableTime: "enableTime", dateFormat: "dateFormat", altFormat: "altFormat", locale: "locale" }, providers: [
44
+ {
45
+ provide: NG_VALUE_ACCESSOR,
46
+ useExisting: forwardRef(() => CalendarComponent),
47
+ multi: true
48
+ }
49
+ ], ngImport: i0, template: `
50
+ <div class="form-group" [ngStyle]="{
51
+ 'margin-top': marginTop + 'rem',
52
+ 'margin-bottom': marginBottom + 'rem',
53
+ 'margin-left': marginLeft + 'rem',
54
+ 'margin-right': marginRight + 'rem'
55
+ }">
56
+ <label [for]="inputId" class="form-label">{{ label }}</label>
57
+ <input
58
+ [id]="inputId"
59
+ class="form-control"
60
+ type="text"
61
+ mwlFlatpickr
62
+ [(ngModel)]="value"
63
+ (ngModelChange)="onNgModelChange($event)"
64
+ [altInput]="altInput"
65
+ [convertModelValue]="convertModelValue"
66
+ [enableTime]="enableTime"
67
+ [dateFormat]="dateFormat"
68
+ [altFormat]="altFormat"
69
+ [placeholder]="placeholder"
70
+ [locale]="locale"
71
+ />
72
+ </div>
73
+ `, isInline: true, styles: [".form-group{font-family:Arial,sans-serif;font-size:1rem}.form-label{font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.FlatpickrDirective, selector: "[mwlFlatpickr]", inputs: ["options", "altFormat", "altInput", "altInputClass", "allowInput", "allowInvalidPreload", "appendTo", "ariaDateFormat", "clickOpens", "dateFormat", "defaultHour", "defaultMinute", "defaultSeconds", "disable", "disableMobile", "enable", "enableTime", "enableSeconds", "formatDate", "hourIncrement", "inline", "maxDate", "minDate", "maxTime", "minTime", "minuteIncrement", "mode", "nextArrow", "noCalendar", "now", "parseDate", "prevArrow", "shorthandCurrentMonth", "showMonths", "static", "time24hr", "weekNumbers", "getWeek", "wrap", "plugins", "locale", "convertModelValue", "monthSelectorType", "ignoredFocusElements"], outputs: ["flatpickrReady", "flatpickrChange", "flatpickrValueUpdate", "flatpickrOpen", "flatpickrClose", "flatpickrMonthChange", "flatpickrYearChange", "flatpickrDayCreate"], exportAs: ["mwlFlatpickr"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CalendarComponent, decorators: [{
76
+ type: Component,
77
+ args: [{ selector: 'sim-advanced-calendar', template: `
78
+ <div class="form-group" [ngStyle]="{
79
+ 'margin-top': marginTop + 'rem',
80
+ 'margin-bottom': marginBottom + 'rem',
81
+ 'margin-left': marginLeft + 'rem',
82
+ 'margin-right': marginRight + 'rem'
83
+ }">
84
+ <label [for]="inputId" class="form-label">{{ label }}</label>
85
+ <input
86
+ [id]="inputId"
87
+ class="form-control"
88
+ type="text"
89
+ mwlFlatpickr
90
+ [(ngModel)]="value"
91
+ (ngModelChange)="onNgModelChange($event)"
92
+ [altInput]="altInput"
93
+ [convertModelValue]="convertModelValue"
94
+ [enableTime]="enableTime"
95
+ [dateFormat]="dateFormat"
96
+ [altFormat]="altFormat"
97
+ [placeholder]="placeholder"
98
+ [locale]="locale"
99
+ />
100
+ </div>
101
+ `, providers: [
102
+ {
103
+ provide: NG_VALUE_ACCESSOR,
104
+ useExisting: forwardRef(() => CalendarComponent),
105
+ multi: true
106
+ }
107
+ ], changeDetection: ChangeDetectionStrategy.OnPush, styles: [".form-group{font-family:Arial,sans-serif;font-size:1rem}.form-label{font-weight:700}\n"] }]
108
+ }], propDecorators: { inputId: [{
109
+ type: Input
110
+ }], label: [{
111
+ type: Input
112
+ }], placeholder: [{
113
+ type: Input
114
+ }], marginTop: [{
115
+ type: Input
116
+ }], marginBottom: [{
117
+ type: Input
118
+ }], marginLeft: [{
119
+ type: Input
120
+ }], marginRight: [{
121
+ type: Input
122
+ }], altInput: [{
123
+ type: Input
124
+ }], convertModelValue: [{
125
+ type: Input
126
+ }], enableTime: [{
127
+ type: Input
128
+ }], dateFormat: [{
129
+ type: Input
130
+ }], altFormat: [{
131
+ type: Input
132
+ }], locale: [{
133
+ type: Input
134
+ }] } });
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliLXBvcnRhbC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hZHZhbmNlZC1jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLFNBQVMsTUFBTSwyQkFBMkIsQ0FBQyxDQUFDLG1DQUFtQzs7Ozs7QUFnRHRGLE1BQU0sT0FBTyxpQkFBaUI7SUE5QzlCO1FBK0NXLFlBQU8sR0FBVyxXQUFXLENBQUM7UUFDOUIsVUFBSyxHQUFXLGtCQUFrQixDQUFDO1FBQ25DLGdCQUFXLEdBQVcsU0FBUyxDQUFDO1FBQ2hDLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsaUJBQVksR0FBVyxDQUFDLENBQUM7UUFDekIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLHNCQUFpQixHQUFZLElBQUksQ0FBQztRQUNsQyxlQUFVLEdBQVksSUFBSSxDQUFDO1FBQzNCLGVBQVUsR0FBVyxXQUFXLENBQUM7UUFDakMsY0FBUyxHQUFXLE9BQU8sQ0FBQztRQUM1QixXQUFNLEdBQVEsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLDZDQUE2QztRQUkxRSxhQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMzQixjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBc0IvQjtJQXBCQyxRQUFRO1FBQ04sK0JBQStCO0lBQ2pDLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVU7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzsrR0F2Q1UsaUJBQWlCO21HQUFqQixpQkFBaUIsb1lBbkJqQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Z0JBQ2hELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRiwwQkEvQlM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCVDs7NEZBb0JVLGlCQUFpQjtrQkE5QzdCLFNBQVM7K0JBQ0UsdUJBQXVCLFlBQ3ZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQzs0QkFDaEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsbUJBV2dCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBCcmF6aWxpYW4gZnJvbSAnZmxhdHBpY2tyL2Rpc3QvbDEwbi9wdC5qcyc7IC8vIEltcG9ydGEgYSBsb2NhbGl6YcOnw6NvIGJyYXNpbGVpcmFcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltLWFkdmFuY2VkLWNhbGVuZGFyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtuZ1N0eWxlXT1cIntcbiAgICAgICdtYXJnaW4tdG9wJzogbWFyZ2luVG9wICsgJ3JlbScsXG4gICAgICAnbWFyZ2luLWJvdHRvbSc6IG1hcmdpbkJvdHRvbSArICdyZW0nLFxuICAgICAgJ21hcmdpbi1sZWZ0JzogbWFyZ2luTGVmdCArICdyZW0nLFxuICAgICAgJ21hcmdpbi1yaWdodCc6IG1hcmdpblJpZ2h0ICsgJ3JlbSdcbiAgICB9XCI+XG4gICAgICA8bGFiZWwgW2Zvcl09XCJpbnB1dElkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIG13bEZsYXRwaWNrclxuICAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25OZ01vZGVsQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbYWx0SW5wdXRdPVwiYWx0SW5wdXRcIlxuICAgICAgICBbY29udmVydE1vZGVsVmFsdWVdPVwiY29udmVydE1vZGVsVmFsdWVcIlxuICAgICAgICBbZW5hYmxlVGltZV09XCJlbmFibGVUaW1lXCJcbiAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiXG4gICAgICAgIFthbHRGb3JtYXRdPVwiYWx0Rm9ybWF0XCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2xvY2FsZV09XCJsb2NhbGVcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDYWxlbmRhckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXSxcbiAgc3R5bGVzOiBbYFxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgLmZvcm0tbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICBgXSxcblxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICBASW5wdXQoKSBpbnB1dElkOiBzdHJpbmcgPSAnc3RhcnREYXRlJztcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICdFdmVudCBTdGFydCBEYXRlJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICdOb3Qgc2V0JztcbiAgQElucHV0KCkgbWFyZ2luVG9wOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBtYXJnaW5Cb3R0b206IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpbkxlZnQ6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpblJpZ2h0OiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBhbHRJbnB1dDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbnZlcnRNb2RlbFZhbHVlOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgZW5hYmxlVGltZTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGRhdGVGb3JtYXQ6IHN0cmluZyA9ICdkL20vWSBIOmknO1xuICBASW5wdXQoKSBhbHRGb3JtYXQ6IHN0cmluZyA9ICdkL20vWSc7XG4gIEBJbnB1dCgpIGxvY2FsZTogYW55ID0gQnJhemlsaWFuLnB0OyAvLyBEZWZpbmUgbyBpZGlvbWEgY29tbyBicmFzaWxlaXJvIHBvciBwYWRyw6NvXG5cbiAgdmFsdWU6IGFueTtcblxuICBwcml2YXRlIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBbnkgbmVjZXNzYXJ5IGluaXRpYWxpemF0aW9uXG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIG9uTmdNb2RlbENoYW5nZShldmVudDogYW55KSB7XG4gICAgdGhpcy5vbkNoYW5nZShldmVudCk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,113 @@
1
+ import { Component, EventEmitter, Input, Output, forwardRef } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/forms";
6
+ export class DatePickerComponent {
7
+ constructor() {
8
+ this.inputId = '';
9
+ this.label = '';
10
+ this.placeholder = '';
11
+ this.marginTop = 0;
12
+ this.marginBottom = 0;
13
+ this.marginLeft = 0;
14
+ this.marginRight = 0;
15
+ this.ngModelChange = new EventEmitter();
16
+ // ControlValueAccessor interface methods
17
+ this.onChange = () => { };
18
+ this.onTouched = () => { };
19
+ }
20
+ get value() {
21
+ return this.innerValue;
22
+ }
23
+ set value(val) {
24
+ this.innerValue = val;
25
+ this.onChange(val);
26
+ this.onTouched();
27
+ }
28
+ onNgModelChange(event) {
29
+ this.value = event;
30
+ this.ngModelChange.emit(event);
31
+ }
32
+ writeValue(value) {
33
+ this.value = value;
34
+ }
35
+ registerOnChange(fn) {
36
+ this.onChange = fn;
37
+ }
38
+ registerOnTouched(fn) {
39
+ this.onTouched = fn;
40
+ }
41
+ setDisabledState(isDisabled) {
42
+ // Logic for disabling the component
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DatePickerComponent, selector: "sim-date-picker", inputs: { inputId: "inputId", label: "label", placeholder: "placeholder", marginTop: "marginTop", marginBottom: "marginBottom", marginLeft: "marginLeft", marginRight: "marginRight" }, outputs: { ngModelChange: "ngModelChange" }, providers: [
46
+ {
47
+ provide: NG_VALUE_ACCESSOR,
48
+ useExisting: forwardRef(() => DatePickerComponent),
49
+ multi: true
50
+ }
51
+ ], ngImport: i0, template: `
52
+ <div class="form-group" [ngStyle]="{
53
+ 'margin-top': marginTop + 'rem',
54
+ 'margin-bottom': marginBottom + 'rem',
55
+ 'margin-left': marginLeft + 'rem',
56
+ 'margin-right': marginRight + 'rem'
57
+ }">
58
+ <label [for]="inputId" class="form-label">{{ label }}</label>
59
+ <input
60
+ [id]="inputId"
61
+ class="form-control"
62
+ type="date"
63
+ [(ngModel)]="value"
64
+ (ngModelChange)="onNgModelChange($event)"
65
+ [placeholder]="placeholder"
66
+ />
67
+ </div>
68
+ `, isInline: true, styles: [".form-label{font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatePickerComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'sim-date-picker', template: `
73
+ <div class="form-group" [ngStyle]="{
74
+ 'margin-top': marginTop + 'rem',
75
+ 'margin-bottom': marginBottom + 'rem',
76
+ 'margin-left': marginLeft + 'rem',
77
+ 'margin-right': marginRight + 'rem'
78
+ }">
79
+ <label [for]="inputId" class="form-label">{{ label }}</label>
80
+ <input
81
+ [id]="inputId"
82
+ class="form-control"
83
+ type="date"
84
+ [(ngModel)]="value"
85
+ (ngModelChange)="onNgModelChange($event)"
86
+ [placeholder]="placeholder"
87
+ />
88
+ </div>
89
+ `, providers: [
90
+ {
91
+ provide: NG_VALUE_ACCESSOR,
92
+ useExisting: forwardRef(() => DatePickerComponent),
93
+ multi: true
94
+ }
95
+ ], styles: [".form-label{font-weight:700}\n"] }]
96
+ }], propDecorators: { inputId: [{
97
+ type: Input
98
+ }], label: [{
99
+ type: Input
100
+ }], placeholder: [{
101
+ type: Input
102
+ }], marginTop: [{
103
+ type: Input
104
+ }], marginBottom: [{
105
+ type: Input
106
+ }], marginLeft: [{
107
+ type: Input
108
+ }], marginRight: [{
109
+ type: Input
110
+ }], ngModelChange: [{
111
+ type: Output
112
+ }] } });
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliLXBvcnRhbC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hZHZhbmNlZC1jYWxlbmRhci9kYXRlLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBbUN6RSxNQUFNLE9BQU8sbUJBQW1CO0lBakNoQztRQWtDVyxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBQ3JCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixpQkFBWSxHQUFXLENBQUMsQ0FBQztRQUN6QixlQUFVLEdBQVcsQ0FBQyxDQUFDO1FBQ3ZCLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBRXZCLGtCQUFhLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFtQmhFLHlDQUF5QztRQUN6QyxhQUFRLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLGNBQVMsR0FBUSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FpQjVCO0lBbENDLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsR0FBUTtRQUNoQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVU7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQU1ELFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxvQ0FBb0M7SUFDdEMsQ0FBQzsrR0E5Q1UsbUJBQW1CO21HQUFuQixtQkFBbUIsK1FBYm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQXhCUzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQ7OzRGQWNVLG1CQUFtQjtrQkFqQy9CLFNBQVM7K0JBQ0UsaUJBQWlCLFlBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCVCxhQUNVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkFRUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltLWRhdGUtcGlja2VyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtuZ1N0eWxlXT1cIntcbiAgICAgICdtYXJnaW4tdG9wJzogbWFyZ2luVG9wICsgJ3JlbScsXG4gICAgICAnbWFyZ2luLWJvdHRvbSc6IG1hcmdpbkJvdHRvbSArICdyZW0nLFxuICAgICAgJ21hcmdpbi1sZWZ0JzogbWFyZ2luTGVmdCArICdyZW0nLFxuICAgICAgJ21hcmdpbi1yaWdodCc6IG1hcmdpblJpZ2h0ICsgJ3JlbSdcbiAgICB9XCI+XG4gICAgICA8bGFiZWwgW2Zvcl09XCJpbnB1dElkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICB0eXBlPVwiZGF0ZVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbk5nTW9kZWxDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICBgLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGVQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIHN0eWxlczogW2BcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIGBdXG59KVxuZXhwb3J0IGNsYXNzIERhdGVQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpIGlucHV0SWQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgbWFyZ2luVG9wOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBtYXJnaW5Cb3R0b206IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpbkxlZnQ6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpblJpZ2h0OiBudW1iZXIgPSAwO1xuXG4gIEBPdXRwdXQoKSBuZ01vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcml2YXRlIGlubmVyVmFsdWU6IGFueTtcblxuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlO1xuICB9XG5cbiAgc2V0IHZhbHVlKHZhbDogYW55KSB7XG4gICAgdGhpcy5pbm5lclZhbHVlID0gdmFsO1xuICAgIHRoaXMub25DaGFuZ2UodmFsKTtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICB9XG5cbiAgb25OZ01vZGVsQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gZXZlbnQ7XG4gICAgdGhpcy5uZ01vZGVsQ2hhbmdlLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgLy8gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlIG1ldGhvZHNcbiAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHsgfTtcbiAgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7IH07XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgLy8gTG9naWMgZm9yIGRpc2FibGluZyB0aGUgY29tcG9uZW50XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,113 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, forwardRef } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/forms";
6
+ export class DateTimePickerComponent {
7
+ constructor() {
8
+ this.inputId = '';
9
+ this.label = '';
10
+ this.placeholder = '';
11
+ this.marginTop = 0;
12
+ this.marginBottom = 0;
13
+ this.marginLeft = 0;
14
+ this.marginRight = 0;
15
+ this.ngModelChange = new EventEmitter();
16
+ // ControlValueAccessor interface methods
17
+ this.onChange = () => { };
18
+ this.onTouched = () => { };
19
+ }
20
+ get value() {
21
+ return this._value;
22
+ }
23
+ set value(val) {
24
+ this._value = val;
25
+ this.onChange(val);
26
+ this.onTouched();
27
+ }
28
+ onNgModelChange(event) {
29
+ this.value = event;
30
+ this.ngModelChange.emit(event);
31
+ }
32
+ writeValue(value) {
33
+ this._value = value;
34
+ }
35
+ registerOnChange(fn) {
36
+ this.onChange = fn;
37
+ }
38
+ registerOnTouched(fn) {
39
+ this.onTouched = fn;
40
+ }
41
+ setDisabledState(isDisabled) {
42
+ // Logic for disabling the component
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateTimePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DateTimePickerComponent, selector: "sim-date-time-picker", inputs: { inputId: "inputId", label: "label", placeholder: "placeholder", marginTop: "marginTop", marginBottom: "marginBottom", marginLeft: "marginLeft", marginRight: "marginRight" }, outputs: { ngModelChange: "ngModelChange" }, providers: [
46
+ {
47
+ provide: NG_VALUE_ACCESSOR,
48
+ useExisting: forwardRef(() => DateTimePickerComponent),
49
+ multi: true
50
+ }
51
+ ], ngImport: i0, template: `
52
+ <div class="form-group" [ngStyle]="{
53
+ 'margin-top': marginTop + 'rem',
54
+ 'margin-bottom': marginBottom + 'rem',
55
+ 'margin-left': marginLeft + 'rem',
56
+ 'margin-right': marginRight + 'rem'
57
+ }">
58
+ <label [for]="inputId" class="form-label">{{ label }}</label>
59
+ <input
60
+ [id]="inputId"
61
+ class="form-control"
62
+ type="datetime-local"
63
+ [(ngModel)]="value"
64
+ (ngModelChange)="onNgModelChange($event)"
65
+ [placeholder]="placeholder"
66
+ />
67
+ </div>
68
+ `, isInline: true, styles: [".form-label{font-weight:700}.custom-input{border:1px solid #9aa4b2;transition:border-color .3s,box-shadow .3s}.custom-input:hover{border-color:#2196f3;border-width:2px}.custom-input:focus{border-color:#2196f3;border-width:2px;box-shadow:0 0 5px #007bff80}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DateTimePickerComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'sim-date-time-picker', template: `
73
+ <div class="form-group" [ngStyle]="{
74
+ 'margin-top': marginTop + 'rem',
75
+ 'margin-bottom': marginBottom + 'rem',
76
+ 'margin-left': marginLeft + 'rem',
77
+ 'margin-right': marginRight + 'rem'
78
+ }">
79
+ <label [for]="inputId" class="form-label">{{ label }}</label>
80
+ <input
81
+ [id]="inputId"
82
+ class="form-control"
83
+ type="datetime-local"
84
+ [(ngModel)]="value"
85
+ (ngModelChange)="onNgModelChange($event)"
86
+ [placeholder]="placeholder"
87
+ />
88
+ </div>
89
+ `, providers: [
90
+ {
91
+ provide: NG_VALUE_ACCESSOR,
92
+ useExisting: forwardRef(() => DateTimePickerComponent),
93
+ multi: true
94
+ }
95
+ ], changeDetection: ChangeDetectionStrategy.OnPush, styles: [".form-label{font-weight:700}.custom-input{border:1px solid #9aa4b2;transition:border-color .3s,box-shadow .3s}.custom-input:hover{border-color:#2196f3;border-width:2px}.custom-input:focus{border-color:#2196f3;border-width:2px;box-shadow:0 0 5px #007bff80}\n"] }]
96
+ }], propDecorators: { inputId: [{
97
+ type: Input
98
+ }], label: [{
99
+ type: Input
100
+ }], placeholder: [{
101
+ type: Input
102
+ }], marginTop: [{
103
+ type: Input
104
+ }], marginBottom: [{
105
+ type: Input
106
+ }], marginLeft: [{
107
+ type: Input
108
+ }], marginRight: [{
109
+ type: Input
110
+ }], ngModelChange: [{
111
+ type: Output
112
+ }] } });
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWItcG9ydGFsLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2FkdmFuY2VkLWNhbGVuZGFyL2RhdGUtdGltZS1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQWlEekUsTUFBTSxPQUFPLHVCQUF1QjtJQS9DcEM7UUFnRFcsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsaUJBQVksR0FBVyxDQUFDLENBQUM7UUFDekIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUV2QixrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBbUJoRSx5Q0FBeUM7UUFDekMsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQixjQUFTLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBaUI1QjtJQWxDQyxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLEdBQVE7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFVO1FBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFNRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsZ0JBQWdCLENBQUUsVUFBbUI7UUFDbkMsb0NBQW9DO0lBQ3RDLENBQUM7K0dBOUNVLHVCQUF1QjttR0FBdkIsdUJBQXVCLG9SQVR2QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7Z0JBQ3RELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRiwwQkExQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJUOzs0RkE0QlUsdUJBQXVCO2tCQS9DbkMsU0FBUzsrQkFDRSxzQkFBc0IsWUFDdEI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJULGFBbUJVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDOzRCQUN0RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaW0tZGF0ZS10aW1lLXBpY2tlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiBbbmdTdHlsZV09XCJ7XG4gICAgICAnbWFyZ2luLXRvcCc6IG1hcmdpblRvcCArICdyZW0nLFxuICAgICAgJ21hcmdpbi1ib3R0b20nOiBtYXJnaW5Cb3R0b20gKyAncmVtJyxcbiAgICAgICdtYXJnaW4tbGVmdCc6IG1hcmdpbkxlZnQgKyAncmVtJyxcbiAgICAgICdtYXJnaW4tcmlnaHQnOiBtYXJnaW5SaWdodCArICdyZW0nXG4gICAgfVwiPlxuICAgICAgPGxhYmVsIFtmb3JdPVwiaW5wdXRJZFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7IGxhYmVsIH19PC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbaWRdPVwiaW5wdXRJZFwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTmdNb2RlbENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmN1c3RvbS1pbnB1dCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWFhNGIyOyAvKiBDaW56YSBtYWlzIGVzY3VybyAqL1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MsIGJveC1zaGFkb3cgMC4zczsgLyogU3Vhdml6YSBhIHRyYW5zacOnw6NvICovXG4gICAgfVxuICAgIC5jdXN0b20taW5wdXQ6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjE5NmYzOyAvKiBBenVsIG1haXMgaW50ZW5zbyBhbyBwYXNzYXIgbyBtb3VzZSAqL1xuICAgICAgYm9yZGVyLXdpZHRoOiAycHg7IC8qIEVzcGVzc3VyYSBkYSBib3JkYSBhbyBwYXNzYXIgbyBtb3VzZSAqL1xuICAgIH1cbiAgICAuY3VzdG9tLWlucHV0OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzIxOTZmMzsgLyogQXp1bCBtYWlzIGludGVuc28gYW8gZm9jYXIgKi9cbiAgICAgIGJvcmRlci13aWR0aDogMnB4OyAvKiBFc3Blc3N1cmEgZGEgYm9yZGEgYW8gZm9jYXIgKi9cbiAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgwLCAxMjMsIDI1NSwgMC41KTsgLyogRWZlaXRvIGRlIGZvY28gbWFpcyBwcm9udW5jaWFkbyAqL1xuICAgIH1cbiAgYF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERhdGVUaW1lUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASW5wdXQoKSBpbnB1dElkOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIG1hcmdpblRvcDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgbWFyZ2luQm90dG9tOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBtYXJnaW5MZWZ0OiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBtYXJnaW5SaWdodDogbnVtYmVyID0gMDtcblxuICBAT3V0cHV0KCkgbmdNb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcblxuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICBzZXQgdmFsdWUodmFsOiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIG9uTmdNb2RlbENoYW5nZShldmVudDogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50O1xuICAgIHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIC8vIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZSBtZXRob2RzXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7IH07XG4gIG9uVG91Y2hlZDogYW55ID0gKCkgPT4geyB9O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBMb2dpYyBmb3IgZGlzYWJsaW5nIHRoZSBjb21wb25lbnRcbiAgfVxufVxuIl19
@@ -22,8 +22,6 @@ export class ButtonComponent {
22
22
  this.marginBottom = 0;
23
23
  this.marginLeft = 0;
24
24
  this.marginRight = 0;
25
- this.permissions = [];
26
- this.permissionChecker = null;
27
25
  this.clickEvent = new EventEmitter();
28
26
  this.isHovered = false;
29
27
  this.isActive = false;
@@ -98,57 +96,47 @@ export class ButtonComponent {
98
96
  'filter': activeFilter
99
97
  };
100
98
  }
101
- hasPermission() {
102
- if (!this.permissionChecker || this.permissions.length === 0) {
103
- return true;
104
- }
105
- return this.permissionChecker(this.permissions);
106
- }
107
99
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
108
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonComponent, selector: "sim-app-button", inputs: { type: "type", label: "label", btnClass: "btnClass", fontSize: "fontSize", disabled: "disabled", autofocus: "autofocus", form: "form", formaction: "formaction", formenctype: "formenctype", formmethod: "formmethod", formnovalidate: "formnovalidate", formtarget: "formtarget", name: "name", value: "value", marginTop: "marginTop", marginBottom: "marginBottom", marginLeft: "marginLeft", marginRight: "marginRight", permissions: "permissions", permissionChecker: "permissionChecker" }, outputs: { clickEvent: "clickEvent" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "mousedown": "onMouseDown()", "mouseup": "onMouseUp()" } }, ngImport: i0, template: `
109
- <ng-container *ngIf="hasPermission()">
110
- <button [type]="type"
111
- class="btn"
112
- [ngClass]="btnClass"
113
- [ngStyle]="getDynamicStyles()"
114
- (click)="onClick($event)"
115
- [disabled]="disabled"
116
- [attr.autofocus]="autofocus ? true : null"
117
- [attr.form]="form"
118
- [attr.formaction]="formaction"
119
- [attr.formenctype]="formenctype"
120
- [attr.formmethod]="formmethod"
121
- [attr.formnovalidate]="formnovalidate"
122
- [attr.formtarget]="formtarget"
123
- [attr.name]="name"
124
- [attr.value]="value">
125
- {{ label }}
126
- </button>
127
- </ng-container>
128
- `, isInline: true, styles: [".btn{padding:.5rem 1rem;border-radius:.25rem;transition:background-color .3s,border-color .3s,filter .3s;font-family:Inter,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:.005em;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
100
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonComponent, selector: "sim-app-button", inputs: { type: "type", label: "label", btnClass: "btnClass", fontSize: "fontSize", disabled: "disabled", autofocus: "autofocus", form: "form", formaction: "formaction", formenctype: "formenctype", formmethod: "formmethod", formnovalidate: "formnovalidate", formtarget: "formtarget", name: "name", value: "value", marginTop: "marginTop", marginBottom: "marginBottom", marginLeft: "marginLeft", marginRight: "marginRight" }, outputs: { clickEvent: "clickEvent" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "mousedown": "onMouseDown()", "mouseup": "onMouseUp()" } }, ngImport: i0, template: `
101
+ <button [type]="type"
102
+ class="btn"
103
+ [ngClass]="btnClass"
104
+ [ngStyle]="getDynamicStyles()"
105
+ (click)="onClick($event)"
106
+ [disabled]="disabled"
107
+ [attr.autofocus]="autofocus ? true : null"
108
+ [attr.form]="form"
109
+ [attr.formaction]="formaction"
110
+ [attr.formenctype]="formenctype"
111
+ [attr.formmethod]="formmethod"
112
+ [attr.formnovalidate]="formnovalidate"
113
+ [attr.formtarget]="formtarget"
114
+ [attr.name]="name"
115
+ [attr.value]="value">
116
+ {{ label }}
117
+ </button>
118
+ `, isInline: true, styles: [".btn{padding:.5rem 1rem;border-radius:.25rem;transition:background-color .3s,border-color .3s,filter .3s;font-family:Inter,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:.005em;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
129
119
  }
130
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonComponent, decorators: [{
131
121
  type: Component,
132
122
  args: [{ selector: 'sim-app-button', template: `
133
- <ng-container *ngIf="hasPermission()">
134
- <button [type]="type"
135
- class="btn"
136
- [ngClass]="btnClass"
137
- [ngStyle]="getDynamicStyles()"
138
- (click)="onClick($event)"
139
- [disabled]="disabled"
140
- [attr.autofocus]="autofocus ? true : null"
141
- [attr.form]="form"
142
- [attr.formaction]="formaction"
143
- [attr.formenctype]="formenctype"
144
- [attr.formmethod]="formmethod"
145
- [attr.formnovalidate]="formnovalidate"
146
- [attr.formtarget]="formtarget"
147
- [attr.name]="name"
148
- [attr.value]="value">
149
- {{ label }}
150
- </button>
151
- </ng-container>
123
+ <button [type]="type"
124
+ class="btn"
125
+ [ngClass]="btnClass"
126
+ [ngStyle]="getDynamicStyles()"
127
+ (click)="onClick($event)"
128
+ [disabled]="disabled"
129
+ [attr.autofocus]="autofocus ? true : null"
130
+ [attr.form]="form"
131
+ [attr.formaction]="formaction"
132
+ [attr.formenctype]="formenctype"
133
+ [attr.formmethod]="formmethod"
134
+ [attr.formnovalidate]="formnovalidate"
135
+ [attr.formtarget]="formtarget"
136
+ [attr.name]="name"
137
+ [attr.value]="value">
138
+ {{ label }}
139
+ </button>
152
140
  `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".btn{padding:.5rem 1rem;border-radius:.25rem;transition:background-color .3s,border-color .3s,filter .3s;font-family:Inter,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:.005em;text-align:left}\n"] }]
153
141
  }], propDecorators: { type: [{
154
142
  type: Input
@@ -186,10 +174,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
186
174
  type: Input
187
175
  }], marginRight: [{
188
176
  type: Input
189
- }], permissions: [{
190
- type: Input
191
- }], permissionChecker: [{
192
- type: Input
193
177
  }], clickEvent: [{
194
178
  type: Output
195
179
  }], onMouseEnter: [{
@@ -205,4 +189,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
205
189
  type: HostListener,
206
190
  args: ['mouseup']
207
191
  }] } });
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYi1wb3J0YWwtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUF3QzdELE1BQU0sT0FBTyxlQUFlO0lBdEM1QjtRQXVDVyxTQUFJLEdBQVcsUUFBUSxDQUFDO1FBQ3hCLFVBQUssR0FBVyxRQUFRLENBQUM7UUFDekIsYUFBUSxHQUFrQixhQUFhLENBQUMsT0FBTyxDQUFDO1FBQ2hELGFBQVEsR0FBVyxNQUFNLENBQUM7UUFDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBQzNCLGVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBQ2pDLGdCQUFXLEdBQWtCLElBQUksQ0FBQztRQUNsQyxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUNqQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUNqQyxTQUFJLEdBQWtCLElBQUksQ0FBQztRQUMzQixVQUFLLEdBQWtCLElBQUksQ0FBQztRQUM1QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO1FBQ3pCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFFeEIsZ0JBQVcsR0FBYSxFQUFFLENBQUM7UUFDM0Isc0JBQWlCLEdBQWdELElBQUksQ0FBQztR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QUFuQixNQUFNO2dCQUtxQixZQUFZO3NCQUF2QyxZQUFZO3VCQUFDLFlBQVk7Z0JBSUUsWUFBWTtzQkFBdkMsWUFBWTt1QkFBQyxZQUFZO2dCQUtDLFdBQVc7c0JBQXJDLFlBQVk7dUJBQUMsV0FBVztnQkFJQSxTQUFTO3NCQUFqQyxZQUFZO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnV0dG9uQ2xhc3NlcyB9IGZyb20gJy4uLy4uL2VudW0vQnV0dG9uQ2xhc3Nlc0VudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaW0tYXBwLWJ1dHRvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc1Blcm1pc3Npb24oKVwiPlxuICAgICAgPGJ1dHRvbiBbdHlwZV09XCJ0eXBlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJidG5DbGFzc1wiXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldER5bmFtaWNTdHlsZXMoKVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICBbYXR0ci5hdXRvZm9jdXNdPVwiYXV0b2ZvY3VzID8gdHJ1ZSA6IG51bGxcIlxuICAgICAgICAgICAgICBbYXR0ci5mb3JtXT1cImZvcm1cIlxuICAgICAgICAgICAgICBbYXR0ci5mb3JtYWN0aW9uXT1cImZvcm1hY3Rpb25cIlxuICAgICAgICAgICAgICBbYXR0ci5mb3JtZW5jdHlwZV09XCJmb3JtZW5jdHlwZVwiXG4gICAgICAgICAgICAgIFthdHRyLmZvcm1tZXRob2RdPVwiZm9ybW1ldGhvZFwiXG4gICAgICAgICAgICAgIFthdHRyLmZvcm1ub3ZhbGlkYXRlXT1cImZvcm1ub3ZhbGlkYXRlXCJcbiAgICAgICAgICAgICAgW2F0dHIuZm9ybXRhcmdldF09XCJmb3JtdGFyZ2V0XCJcbiAgICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgICAgW2F0dHIudmFsdWVdPVwidmFsdWVcIj5cbiAgICAgICAge3sgbGFiZWwgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmJ0biB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzLCBmaWx0ZXIgMC4zcztcbiAgICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDA1ZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgYF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHR5cGU6IHN0cmluZyA9ICdidXR0b24nO1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJ1N1Ym1pdCc7XG4gIEBJbnB1dCgpIGJ0bkNsYXNzOiBCdXR0b25DbGFzc2VzID0gQnV0dG9uQ2xhc3Nlcy5QcmltYXJ5O1xuICBASW5wdXQoKSBmb250U2l6ZTogc3RyaW5nID0gJzFyZW0nO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBhdXRvZm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZm9ybTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIGZvcm1hY3Rpb246IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBmb3JtZW5jdHlwZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIGZvcm1tZXRob2Q6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBmb3Jtbm92YWxpZGF0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBmb3JtdGFyZ2V0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgbWFyZ2luVG9wOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSBtYXJnaW5Cb3R0b206IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpbkxlZnQ6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpblJpZ2h0OiBudW1iZXIgPSAwO1xuXG4gIEBJbnB1dCgpIHBlcm1pc3Npb25zOiBzdHJpbmdbXSA9IFtdO1xuICBASW5wdXQoKSBwZXJtaXNzaW9uQ2hlY2tlcjogKChwZXJtaXNzaW9uczogc3RyaW5nW10pID0+IGJvb2xlYW4pIHwgbnVsbCA9IG51bGw7XG5cbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIHByaXZhdGUgaXNIb3ZlcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgaXNBY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgb25Nb3VzZUVudGVyKCkge1xuICAgIHRoaXMuaXNIb3ZlcmVkID0gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKSBvbk1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5pc0hvdmVyZWQgPSBmYWxzZTtcbiAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nKSBvbk1vdXNlRG93bigpIHtcbiAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNldXAnKSBvbk1vdXNlVXAoKSB7XG4gICAgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgb25DbGljayhldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmNsaWNrRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBnZXREeW5hbWljU3R5bGVzKCkge1xuICAgIGxldCBiYWNrZ3JvdW5kQ29sb3IgPSAnJztcbiAgICBsZXQgdGV4dENvbG9yID0gJyNmZmYnOyAvLyBEZWZhdWx0IHRleHQgY29sb3JcbiAgICBsZXQgYm9yZGVyQ29sb3IgPSAnJztcblxuICAgIHN3aXRjaCAodGhpcy5idG5DbGFzcykge1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLlByaW1hcnk6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjMDA0NDRDJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuU2Vjb25kYXJ5OlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnIzJDQTU4RCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLlN1Y2Nlc3M6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjMDBDODUzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuRGFuZ2VyOlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnI0QzMkYyRic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLldhcm5pbmc6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjRkZDMTA3JztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuSW5mbzpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyMzRUM5RDYnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQnV0dG9uQ2xhc3Nlcy5MaWdodDpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyNFRUYyRjYnO1xuICAgICAgICB0ZXh0Q29sb3IgPSAnIzAwNDQ0Qyc7IC8vIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciBMaWdodFxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQnV0dG9uQ2xhc3Nlcy5EYXJrOlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnIzExMTkzNic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLkxpbms6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICd0cmFuc3BhcmVudCc7XG4gICAgICAgIGJvcmRlckNvbG9yID0gJyNEREU1RTknO1xuICAgICAgICB0ZXh0Q29sb3IgPSAnIzAwNDQ0Qyc7IC8vIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciBMaW5rXG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyMwMDQ0NEMnO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjb25zdCBob3ZlckZpbHRlciA9IHRoaXMuaXNIb3ZlcmVkID8gJ2JyaWdodG5lc3MoODAlKScgOiAnbm9uZSc7IC8vIEFkanVzdGVkIGhvdmVyIGJyaWdodG5lc3NcbiAgICBjb25zdCBhY3RpdmVGaWx0ZXIgPSB0aGlzLmlzQWN0aXZlID8gJ2JyaWdodG5lc3MoNjAlKScgOiBob3ZlckZpbHRlcjsgLy8gQWRqdXN0ZWQgYWN0aXZlIGJyaWdodG5lc3NcblxuICAgIHJldHVybiB7XG4gICAgICAnZm9udC1zaXplJzogdGhpcy5mb250U2l6ZSxcbiAgICAgICdtYXJnaW4tdG9wJzogYCR7dGhpcy5tYXJnaW5Ub3B9cmVtYCxcbiAgICAgICdtYXJnaW4tYm90dG9tJzogYCR7dGhpcy5tYXJnaW5Cb3R0b219cmVtYCxcbiAgICAgICdtYXJnaW4tbGVmdCc6IGAke3RoaXMubWFyZ2luTGVmdH1yZW1gLFxuICAgICAgJ21hcmdpbi1yaWdodCc6IGAke3RoaXMubWFyZ2luUmlnaHR9cmVtYCxcbiAgICAgICdiYWNrZ3JvdW5kLWNvbG9yJzogYmFja2dyb3VuZENvbG9yLFxuICAgICAgJ2NvbG9yJzogdGV4dENvbG9yLFxuICAgICAgJ2JvcmRlcic6IGJvcmRlckNvbG9yID8gYDFweCBzb2xpZCAke2JvcmRlckNvbG9yfWAgOiAnbm9uZScsXG4gICAgICAndHJhbnNpdGlvbic6ICdiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzLCBmaWx0ZXIgMC4zcycsXG4gICAgICAnZmlsdGVyJzogYWN0aXZlRmlsdGVyXG4gICAgfTtcbiAgfVxuXG4gIGhhc1Blcm1pc3Npb24oKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnBlcm1pc3Npb25DaGVja2VyIHx8IHRoaXMucGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbkNoZWNrZXIodGhpcy5wZXJtaXNzaW9ucyk7XG4gIH1cbn1cbiJdfQ==
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYi1wb3J0YWwtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFzQzdELE1BQU0sT0FBTyxlQUFlO0lBcEM1QjtRQXFDVyxTQUFJLEdBQVcsUUFBUSxDQUFDO1FBQ3hCLFVBQUssR0FBVyxRQUFRLENBQUM7UUFDekIsYUFBUSxHQUFrQixhQUFhLENBQUMsT0FBTyxDQUFDO1FBQ2hELGFBQVEsR0FBVyxNQUFNLENBQUM7UUFDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBQzNCLGVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBQ2pDLGdCQUFXLEdBQWtCLElBQUksQ0FBQztRQUNsQyxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUNqQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUNqQyxTQUFJLEdBQWtCLElBQUksQ0FBQztRQUMzQixVQUFLLEdBQWtCLElBQUksQ0FBQztRQUU1QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO1FBQ3pCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFFdkIsZUFBVSxHQUF3QixJQUFJLFlBQVksRUFBUyxDQUFDO1FBRTlELGNBQVMsR0FBWSxLQUFL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QUNyRSxRQUFRLEVBQUUsWUFBWTtTQUN2QixDQUFDO0lBQ0osQ0FBQzsrR0F2R1UsZUFBZTttR0FBZixlQUFlLHNwQkFsQ2hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7OzRGQWdCVSxlQUFlO2tCQXBDM0IsU0FBUzsrQkFDRSxnQkFBZ0IsWUFDaEI7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVCxtQkFjZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBS3FCLFlBQVk7c0JBQXZDLFlBQVk7dUJBQUMsWUFBWTtnQkFJRSxZQUFZO3NCQUF2QyxZQUFZO3VCQUFDLFlBQVk7Z0JBS0MsV0FBVztzQkFBckMsWUFBWTt1QkFBQyxXQUFXO2dCQUlBLFNBQVM7c0JBQWpDLFlBQVk7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25DbGFzc2VzIH0gZnJvbSAnLi4vLi4vZW51bS9CdXR0b25DbGFzc2VzRW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpbS1hcHAtYnV0dG9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YnV0dG9uIFt0eXBlXT1cInR5cGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJidG5cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiYnRuQ2xhc3NcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiZ2V0RHluYW1pY1N0eWxlcygpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFthdHRyLmF1dG9mb2N1c109XCJhdXRvZm9jdXMgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICAgICBbYXR0ci5mb3JtXT1cImZvcm1cIlxuICAgICAgICAgICAgW2F0dHIuZm9ybWFjdGlvbl09XCJmb3JtYWN0aW9uXCJcbiAgICAgICAgICAgIFthdHRyLmZvcm1lbmN0eXBlXT1cImZvcm1lbmN0eXBlXCJcbiAgICAgICAgICAgIFthdHRyLmZvcm1tZXRob2RdPVwiZm9ybW1ldGhvZFwiXG4gICAgICAgICAgICBbYXR0ci5mb3Jtbm92YWxpZGF0ZV09XCJmb3Jtbm92YWxpZGF0ZVwiXG4gICAgICAgICAgICBbYXR0ci5mb3JtdGFyZ2V0XT1cImZvcm10YXJnZXRcIlxuICAgICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgIFthdHRyLnZhbHVlXT1cInZhbHVlXCI+XG4gICAgICB7eyBsYWJlbCB9fVxuICAgIDwvYnV0dG9uPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmJ0biB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzLCBmaWx0ZXIgMC4zcztcbiAgICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDA1ZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgYF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHR5cGU6IHN0cmluZyA9ICdidXR0b24nO1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJ1N1Ym1pdCc7XG4gIEBJbnB1dCgpIGJ0bkNsYXNzOiBCdXR0b25DbGFzc2VzID0gQnV0dG9uQ2xhc3Nlcy5QcmltYXJ5O1xuICBASW5wdXQoKSBmb250U2l6ZTogc3RyaW5nID0gJzFyZW0nO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBhdXRvZm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZm9ybTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIGZvcm1hY3Rpb246IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBmb3JtZW5jdHlwZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIGZvcm1tZXRob2Q6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBmb3Jtbm92YWxpZGF0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBmb3JtdGFyZ2V0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKSBtYXJnaW5Ub3A6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIG1hcmdpbkJvdHRvbTogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgbWFyZ2luTGVmdDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgbWFyZ2luUmlnaHQ6IG51bWJlciA9IDA7XG5cbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIHByaXZhdGUgaXNIb3ZlcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgaXNBY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgb25Nb3VzZUVudGVyKCkge1xuICAgIHRoaXMuaXNIb3ZlcmVkID0gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKSBvbk1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5pc0hvdmVyZWQgPSBmYWxzZTtcbiAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nKSBvbk1vdXNlRG93bigpIHtcbiAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNldXAnKSBvbk1vdXNlVXAoKSB7XG4gICAgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgb25DbGljayhldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmNsaWNrRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBnZXREeW5hbWljU3R5bGVzKCkge1xuICAgIGxldCBiYWNrZ3JvdW5kQ29sb3IgPSAnJztcbiAgICBsZXQgdGV4dENvbG9yID0gJyNmZmYnOyAvLyBEZWZhdWx0IHRleHQgY29sb3JcbiAgICBsZXQgYm9yZGVyQ29sb3IgPSAnJztcblxuICAgIHN3aXRjaCAodGhpcy5idG5DbGFzcykge1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLlByaW1hcnk6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjMDA0NDRDJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuU2Vjb25kYXJ5OlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnIzJDQTU4RCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLlN1Y2Nlc3M6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjMDBDODUzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuRGFuZ2VyOlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnI0QzMkYyRic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLldhcm5pbmc6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjRkZDMTA3JztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJ1dHRvbkNsYXNzZXMuSW5mbzpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyMzRUM5RDYnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQnV0dG9uQ2xhc3Nlcy5MaWdodDpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyNFRUYyRjYnO1xuICAgICAgICB0ZXh0Q29sb3IgPSAnIzAwNDQ0Qyc7IC8vIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciBMaWdodFxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQnV0dG9uQ2xhc3Nlcy5EYXJrOlxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAnIzExMTkzNic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBCdXR0b25DbGFzc2VzLkxpbms6XG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICd0cmFuc3BhcmVudCc7XG4gICAgICAgIGJvcmRlckNvbG9yID0gJyNEREU1RTknO1xuICAgICAgICB0ZXh0Q29sb3IgPSAnIzAwNDQ0Qyc7IC8vIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciBMaW5rXG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gJyMwMDQ0NEMnO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjb25zdCBob3ZlckZpbHRlciA9IHRoaXMuaXNIb3ZlcmVkID8gJ2JyaWdodG5lc3MoODAlKScgOiAnbm9uZSc7IC8vIEFkanVzdGVkIGhvdmVyIGJyaWdodG5lc3NcbiAgICBjb25zdCBhY3RpdmVGaWx0ZXIgPSB0aGlzLmlzQWN0aXZlID8gJ2JyaWdodG5lc3MoNjAlKScgOiBob3ZlckZpbHRlcjsgLy8gQWRqdXN0ZWQgYWN0aXZlIGJyaWdodG5lc3NcblxuICAgIHJldHVybiB7XG4gICAgICAnZm9udC1zaXplJzogdGhpcy5mb250U2l6ZSxcbiAgICAgICdtYXJnaW4tdG9wJzogYCR7dGhpcy5tYXJnaW5Ub3B9cmVtYCxcbiAgICAgICdtYXJnaW4tYm90dG9tJzogYCR7dGhpcy5tYXJnaW5Cb3R0b219cmVtYCxcbiAgICAgICdtYXJnaW4tbGVmdCc6IGAke3RoaXMubWFyZ2luTGVmdH1yZW1gLFxuICAgICAgJ21hcmdpbi1yaWdodCc6IGAke3RoaXMubWFyZ2luUmlnaHR9cmVtYCxcbiAgICAgICdiYWNrZ3JvdW5kLWNvbG9yJzogYmFja2dyb3VuZENvbG9yLFxuICAgICAgJ2NvbG9yJzogdGV4dENvbG9yLFxuICAgICAgJ2JvcmRlcic6IGJvcmRlckNvbG9yID8gYDFweCBzb2xpZCAke2JvcmRlckNvbG9yfWAgOiAnbm9uZScsXG4gICAgICAndHJhbnNpdGlvbic6ICdiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzLCBmaWx0ZXIgMC4zcycsXG4gICAgICAnZmlsdGVyJzogYWN0aXZlRmlsdGVyXG4gICAgfTtcbiAgfVxufVxuIl19