@rosoftlab/material 1.0.0-alpha-19 → 1.0.1-alpha-2
Sign up to get free protection for your applications and to get access to all the features.
- package/fesm2022/rosoftlab-material.mjs +18 -18
- package/fesm2022/rosoftlab-material.mjs.map +1 -1
- package/package.json +2 -4
- package/esm2022/lib/components/generic-table/generic-table.component.mjs +0 -435
- package/esm2022/lib/components/index.mjs +0 -3
- package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.component.mjs +0 -233
- package/esm2022/lib/core.mjs +0 -6
- package/esm2022/lib/decorators/grid-layout.decorator.mjs +0 -23
- package/esm2022/lib/decorators/index.mjs +0 -2
- package/esm2022/lib/models/grid-layout.mjs +0 -18
- package/esm2022/lib/models/index.mjs +0 -3
- package/esm2022/lib/models/material-base-model.mjs +0 -17
- package/esm2022/lib/rsl-material-module.mjs +0 -105
- package/esm2022/lib/services/dialog.service-implementation.mjs +0 -110
- package/esm2022/lib/services/grid-layout.service.mjs +0 -22
- package/esm2022/lib/services/index.mjs +0 -3
- package/esm2022/public-api.mjs +0 -6
- package/esm2022/rosoftlab-material.mjs +0 -5
@@ -1,233 +0,0 @@
|
|
1
|
-
import { FocusMonitor } from '@angular/cdk/a11y';
|
2
|
-
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
3
|
-
import { Component, ElementRef, EventEmitter, Input, Optional, Output, Self } from '@angular/core';
|
4
|
-
import { NgControl, UntypedFormControl } from '@angular/forms';
|
5
|
-
import { BaseService } from '@rosoftlab/core';
|
6
|
-
import { Subject } from 'rxjs';
|
7
|
-
import { debounceTime, filter, finalize, switchMap, takeUntil, tap } from 'rxjs/operators';
|
8
|
-
import * as i0 from "@angular/core";
|
9
|
-
import * as i1 from "@angular/cdk/a11y";
|
10
|
-
import * as i2 from "@angular/forms";
|
11
|
-
import * as i3 from "@angular/common";
|
12
|
-
import * as i4 from "@angular/material/autocomplete";
|
13
|
-
import * as i5 from "@angular/material/core";
|
14
|
-
import * as i6 from "@angular/material/button";
|
15
|
-
import * as i7 from "@angular/material/icon";
|
16
|
-
import * as i8 from "@angular/material/input";
|
17
|
-
import * as i9 from "@angular/material/form-field";
|
18
|
-
import * as i10 from "@ngx-translate/core";
|
19
|
-
export class SearchableDropdownComponent {
|
20
|
-
static { this.nextId = 0; }
|
21
|
-
get empty() {
|
22
|
-
return !this.value;
|
23
|
-
}
|
24
|
-
get required() { return this._required; }
|
25
|
-
set required(value) {
|
26
|
-
this._required = coerceBooleanProperty(value);
|
27
|
-
this.stateChanges.next();
|
28
|
-
}
|
29
|
-
get disabled() { return this._disabled; }
|
30
|
-
set disabled(value) {
|
31
|
-
this._disabled = coerceBooleanProperty(value);
|
32
|
-
this.stateChanges.next();
|
33
|
-
}
|
34
|
-
get value() {
|
35
|
-
return this._value;
|
36
|
-
}
|
37
|
-
set value(value) {
|
38
|
-
if (value)
|
39
|
-
if (this._value !== value) {
|
40
|
-
this.loadModel(value);
|
41
|
-
}
|
42
|
-
this._value = value;
|
43
|
-
this.stateChanges.next();
|
44
|
-
}
|
45
|
-
constructor(_focusMonitor, _elementRef, ngControl) {
|
46
|
-
this._focusMonitor = _focusMonitor;
|
47
|
-
this._elementRef = _elementRef;
|
48
|
-
this.ngControl = ngControl;
|
49
|
-
this.onChange = (_) => { };
|
50
|
-
this.onTouched = () => { };
|
51
|
-
this.stateChanges = new Subject();
|
52
|
-
this.focused = false;
|
53
|
-
this.errorState = false;
|
54
|
-
this.id = `rsl-searchable-dropdown-${SearchableDropdownComponent.nextId++}`;
|
55
|
-
// label for the search dropdown
|
56
|
-
this.label = '';
|
57
|
-
//Fields for sorting the API data
|
58
|
-
this.sortFields = '';
|
59
|
-
// The value used to populate the control value
|
60
|
-
this.valueField = 'id';
|
61
|
-
// The minumum char for search
|
62
|
-
this.minLengthTerm = 3;
|
63
|
-
this.modelSelected = new EventEmitter();
|
64
|
-
this._required = false;
|
65
|
-
this._disabled = false;
|
66
|
-
this.showSerach = true;
|
67
|
-
this.isLoading = false;
|
68
|
-
this.options = [];
|
69
|
-
this.filteredOptions = [];
|
70
|
-
/** Subject that emits when the component has been destroyed. */
|
71
|
-
this._onDestroy = new Subject();
|
72
|
-
this.searchControl = new UntypedFormControl('');
|
73
|
-
_focusMonitor.monitor(_elementRef, true).subscribe(origin => {
|
74
|
-
if (this.focused && !origin) {
|
75
|
-
this.onTouched();
|
76
|
-
}
|
77
|
-
this.focused = !!origin;
|
78
|
-
this.stateChanges.next();
|
79
|
-
});
|
80
|
-
if (this.ngControl) {
|
81
|
-
this.ngControl.valueAccessor = this;
|
82
|
-
}
|
83
|
-
}
|
84
|
-
ngOnInit() {
|
85
|
-
if (!this.displayFields)
|
86
|
-
this.displayFields = this.searchFields;
|
87
|
-
this.loadModel(this.ngControl.value);
|
88
|
-
if (this.preloadElementsCount) {
|
89
|
-
this.serviceRef.getAll(1, this.preloadElementsCount).subscribe({
|
90
|
-
next: (data) => {
|
91
|
-
this.showSerach = false;
|
92
|
-
this.options = data.getModels();
|
93
|
-
this.filteredOptions = this.options;
|
94
|
-
}
|
95
|
-
});
|
96
|
-
}
|
97
|
-
this.searchControl.valueChanges
|
98
|
-
.pipe(filter((res) => {
|
99
|
-
const result = res !== null && res.length >= this.minLengthTerm;
|
100
|
-
if (!result) {
|
101
|
-
this.options = [];
|
102
|
-
this.filteredOptions = [];
|
103
|
-
}
|
104
|
-
this.showSerach = !result;
|
105
|
-
return result;
|
106
|
-
}), debounceTime(300), tap(() => {
|
107
|
-
this.filteredOptions = [];
|
108
|
-
this.isLoading = true;
|
109
|
-
}), switchMap((value) => this.serviceRef
|
110
|
-
.getAll(1, 10, this.sortFields, `${this.searchFields.replace(',', '|')}@=*${value}`)
|
111
|
-
.pipe(finalize(() => {
|
112
|
-
this.isLoading = false;
|
113
|
-
}))), takeUntil(this._onDestroy))
|
114
|
-
.subscribe((options) => {
|
115
|
-
this.filteredOptions = options.getModels();
|
116
|
-
});
|
117
|
-
}
|
118
|
-
onSelected($event) {
|
119
|
-
const value = $event.option.value;
|
120
|
-
this.searchControl.setValue(value);
|
121
|
-
this.modelSelected.emit(value);
|
122
|
-
if (this.valueField in value) {
|
123
|
-
this.setControlValue(value[this.valueField]);
|
124
|
-
}
|
125
|
-
}
|
126
|
-
setControlValue(value) {
|
127
|
-
this.value = value;
|
128
|
-
this.ngControl.control.setValue(value);
|
129
|
-
}
|
130
|
-
displayWith(value) {
|
131
|
-
return this.getConcatedFields(value);
|
132
|
-
}
|
133
|
-
clearSelection() {
|
134
|
-
this.modelSelected.emit(null);
|
135
|
-
this.setControlValue(null);
|
136
|
-
this.searchControl.setValue(null);
|
137
|
-
this.filteredOptions = this.options;
|
138
|
-
}
|
139
|
-
getConcatedFields(option) {
|
140
|
-
if (!option)
|
141
|
-
return null;
|
142
|
-
const filtersArr = this.displayFields.split(',');
|
143
|
-
return filtersArr.reduce((acc, cv) => {
|
144
|
-
return acc.concat(option[cv] + ' ');
|
145
|
-
}, '');
|
146
|
-
}
|
147
|
-
ngOnDestroy() {
|
148
|
-
this.searchControl = null;
|
149
|
-
this.stateChanges.complete();
|
150
|
-
this._focusMonitor.stopMonitoring(this._elementRef);
|
151
|
-
this._onDestroy.next();
|
152
|
-
this._onDestroy.complete();
|
153
|
-
}
|
154
|
-
getSearchText() {
|
155
|
-
return `Enter ${this.minLengthTerm} characters to start search`;
|
156
|
-
}
|
157
|
-
writeValue(model) {
|
158
|
-
console.log(model);
|
159
|
-
this.value = model;
|
160
|
-
}
|
161
|
-
registerOnChange(fn) {
|
162
|
-
this.onChange = fn;
|
163
|
-
}
|
164
|
-
registerOnTouched(fn) {
|
165
|
-
this.onTouched = fn;
|
166
|
-
}
|
167
|
-
setDisabledState(isDisabled) {
|
168
|
-
this.disabled = isDisabled;
|
169
|
-
}
|
170
|
-
loadModel(id) {
|
171
|
-
//Load the model from API to display the value
|
172
|
-
let needLoad = false;
|
173
|
-
if (id) {
|
174
|
-
if (!this.searchControl.value)
|
175
|
-
needLoad = true;
|
176
|
-
else {
|
177
|
-
if (this.searchControl.value[this.valueField] !== id) {
|
178
|
-
needLoad = true;
|
179
|
-
}
|
180
|
-
}
|
181
|
-
}
|
182
|
-
if (needLoad) {
|
183
|
-
this.serviceRef.get(id).subscribe({
|
184
|
-
next: (model) => {
|
185
|
-
this.options.push(model);
|
186
|
-
this.filteredOptions = this.options;
|
187
|
-
this.searchControl.setValue(model);
|
188
|
-
}
|
189
|
-
});
|
190
|
-
}
|
191
|
-
}
|
192
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SearchableDropdownComponent, deps: [{ token: i1.FocusMonitor }, { token: i0.ElementRef }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
193
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: SearchableDropdownComponent, selector: "rsl-searchable-dropdown", inputs: { label: "label", fControlName: "fControlName", serviceRef: "serviceRef", searchFields: "searchFields", displayFields: "displayFields", sortFields: "sortFields", valueField: "valueField", minLengthTerm: "minLengthTerm", preloadElementsCount: "preloadElementsCount", required: "required", disabled: "disabled", value: "value" }, outputs: { modelSelected: "modelSelected" }, host: { properties: { "class.example-floating": "shouldLabelFloat", "id": "id", "attr.aria-describedby": "describedBy" } }, ngImport: i0, template: "<div class=\"form-group\">\r\n <label>{{label | translate}}</label>\r\n <mat-form-field appearance=\"outline\" fxFlex>\r\n <input matInput [matAutocomplete]=\"auto\" [formControl]=\"searchControl\">\r\n <button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"clearSelection()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelected($event)\"\r\n [displayWith]=\"displayWith.bind(this)\">\r\n <mat-option *ngIf=\"isLoading\">Loading...</mat-option>\r\n <mat-option *ngIf=\"!isLoading && filteredOptions.length == 0 && !showSerach\" disabled>Not found</mat-option>\r\n <mat-option *ngIf=\"showSerach\" disabled>{{getSearchText()}}</mat-option>\r\n <ng-container *ngIf=\"!isLoading && filteredOptions.length > 0\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n <span><b>{{getConcatedFields(option)}}</b></span>\r\n </mat-option>\r\n </ng-container>\r\n\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n</div>", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: 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.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
|
194
|
-
}
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SearchableDropdownComponent, decorators: [{
|
196
|
-
type: Component,
|
197
|
-
args: [{ selector: 'rsl-searchable-dropdown', host: {
|
198
|
-
'[class.example-floating]': 'shouldLabelFloat',
|
199
|
-
'[id]': 'id',
|
200
|
-
'[attr.aria-describedby]': 'describedBy',
|
201
|
-
}, template: "<div class=\"form-group\">\r\n <label>{{label | translate}}</label>\r\n <mat-form-field appearance=\"outline\" fxFlex>\r\n <input matInput [matAutocomplete]=\"auto\" [formControl]=\"searchControl\">\r\n <button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"clearSelection()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelected($event)\"\r\n [displayWith]=\"displayWith.bind(this)\">\r\n <mat-option *ngIf=\"isLoading\">Loading...</mat-option>\r\n <mat-option *ngIf=\"!isLoading && filteredOptions.length == 0 && !showSerach\" disabled>Not found</mat-option>\r\n <mat-option *ngIf=\"showSerach\" disabled>{{getSearchText()}}</mat-option>\r\n <ng-container *ngIf=\"!isLoading && filteredOptions.length > 0\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n <span><b>{{getConcatedFields(option)}}</b></span>\r\n </mat-option>\r\n </ng-container>\r\n\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n</div>" }]
|
202
|
-
}], ctorParameters: () => [{ type: i1.FocusMonitor }, { type: i0.ElementRef }, { type: i2.NgControl, decorators: [{
|
203
|
-
type: Optional
|
204
|
-
}, {
|
205
|
-
type: Self
|
206
|
-
}] }], propDecorators: { label: [{
|
207
|
-
type: Input
|
208
|
-
}], fControlName: [{
|
209
|
-
type: Input
|
210
|
-
}], serviceRef: [{
|
211
|
-
type: Input
|
212
|
-
}], searchFields: [{
|
213
|
-
type: Input
|
214
|
-
}], displayFields: [{
|
215
|
-
type: Input
|
216
|
-
}], sortFields: [{
|
217
|
-
type: Input
|
218
|
-
}], valueField: [{
|
219
|
-
type: Input
|
220
|
-
}], minLengthTerm: [{
|
221
|
-
type: Input
|
222
|
-
}], preloadElementsCount: [{
|
223
|
-
type: Input
|
224
|
-
}], modelSelected: [{
|
225
|
-
type: Output
|
226
|
-
}], required: [{
|
227
|
-
type: Input
|
228
|
-
}], disabled: [{
|
229
|
-
type: Input
|
230
|
-
}], value: [{
|
231
|
-
type: Input
|
232
|
-
}] } });
|
233
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaGFibGUtZHJvcGRvd24vc2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaGFibGUtZHJvcGRvd24vc2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUF5QyxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQTRCLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztBQVczRixNQUFNLE9BQU8sMkJBQTJCO2FBQy9CLFdBQU0sR0FBRyxDQUFDLEFBQUosQ0FBSztJQXNDbEIsSUFBSSxLQUFLO1FBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDckIs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QUMsZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7b0JBQ3BDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNyQyxDQUFDO2FBQ0YsQ0FBQyxDQUFBO1FBQ0osQ0FBQztJQUNILENBQUM7OEdBMU9VLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHdqQkNqQnhDLHVtQ0FvQk07OzJGREhPLDJCQUEyQjtrQkFUdkMsU0FBUzsrQkFDRSx5QkFBeUIsUUFFN0I7d0JBQ0osMEJBQTBCLEVBQUUsa0JBQWtCO3dCQUM5QyxNQUFNLEVBQUUsSUFBSTt3QkFDWix5QkFBeUIsRUFBRSxhQUFhO3FCQUN6Qzs7MEJBMEZFLFFBQVE7OzBCQUFJLElBQUk7eUNBOUVWLEtBQUs7c0JBQWIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQVNILFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUs7Z0JBV0YsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xyXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5nQ29udHJvbCwgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBCYXNlTW9kZWwsIEJhc2VRdWVyeURhdGEsIEJhc2VTZXJ2aWNlIH0gZnJvbSAnQHJvc29mdGxhYi9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzbC1zZWFyY2hhYmxlLWRyb3Bkb3duJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoYWJsZS1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXHJcbiAgaG9zdDoge1xyXG4gICAgJ1tjbGFzcy5leGFtcGxlLWZsb2F0aW5nXSc6ICdzaG91bGRMYWJlbEZsb2F0JyxcclxuICAgICdbaWRdJzogJ2lkJyxcclxuICAgICdbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XSc6ICdkZXNjcmliZWRCeScsXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoYWJsZURyb3Bkb3duQ29tcG9uZW50PFQgZXh0ZW5kcyBCYXNlTW9kZWw+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBzdGF0aWMgbmV4dElkID0gMDtcclxuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcclxuICBvblRvdWNoZWQgPSAoKSA9PiB7IH07XHJcbiAgc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBmb2N1c2VkID0gZmFsc2U7XHJcbiAgZXJyb3JTdGF0ZSA9IGZhbHNlO1xyXG4gIGlkID0gYHJzbC1zZWFyY2hhYmxlLWRyb3Bkb3duLSR7U2VhcmNoYWJsZURyb3Bkb3duQ29tcG9uZW50Lm5leHRJZCsrfWA7XHJcblxyXG4gIC8vIGxhYmVsIGZvciB0aGUgc2VhcmNoIGRyb3Bkb3duXHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvL05hbWUgb2YgdGhlIGZvcm0gY29udHJvbFxyXG4gIEBJbnB1dCgpIGZDb250cm9sTmFtZTogc3RyaW5nO1xyXG5cclxuICAvL1JlZmVyZW5jZSBvZiB0aGUgc2VydmljZVxyXG4gIEBJbnB1dCgpIHNlcnZpY2VSZWY6IEJhc2VTZXJ2aWNlPFQ+O1xyXG5cclxuICAvL0ZpZWxkcyBmb3IgZmlsdGVyaW5nXHJcbiAgQElucHV0KCkgc2VhcmNoRmllbGRzOiBzdHJpbmc7XHJcblxyXG4gIC8vRmllbGRzIGZvciBkaXNwbGF5IFxyXG4gIEBJbnB1dCgpIGRpc3BsYXlGaWVsZHM6IHN0cmluZztcclxuXHJcbiAgLy9GaWVsZHMgZm9yIHNvcnRpbmcgdGhlIEFQSSBkYXRhXHJcbiAgQElucHV0KCkgc29ydEZpZWxkczogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8vIFRoZSB2YWx1ZSB1c2VkIHRvIHBvcHVsYXRlIHRoZSBjb250cm9sIHZhbHVlXHJcbiAgQElucHV0KCkgdmFsdWVGaWVsZDogc3RyaW5nID0gJ2lkJztcclxuXHJcbiAgLy8gVGhlIG1pbnVtdW0gY2hhciBmb3Igc2VhcmNoXHJcbiAgQElucHV0KCkgbWluTGVuZ3RoVGVybTogbnVtYmVyID0gMztcclxuXHJcbiAgLy8gVGhlIHByZWxvYWQgeCBlbGVtZW50c1xyXG4gIEBJbnB1dCgpIHByZWxvYWRFbGVtZW50c0NvdW50OiBudW1iZXI7XHJcblxyXG4gIEBPdXRwdXQoKSBtb2RlbFNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8QmFzZU1vZGVsPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIGdldCBlbXB0eSgpIHtcclxuICAgIHJldHVybiAhdGhpcy52YWx1ZTtcclxuICB9XHJcblxyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCByZXF1aXJlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX3JlcXVpcmVkOyB9XHJcbiAgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7IH1cclxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcclxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcblxyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCB2YWx1ZSgpOiBhbnkgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcclxuICB9XHJcbiAgc2V0IHZhbHVlKHZhbHVlOiBhbnkgfCBudWxsKSB7XHJcbiAgICBpZiAodmFsdWUpXHJcbiAgICAgIGlmICh0aGlzLl92YWx1ZSAhPT0gdmFsdWUpIHtcclxuICAgICAgICB0aGlzLmxvYWRNb2RlbCh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3ZhbHVlOiBhbnk7XHJcbiAgLy8gU2VhcmNoIGZvcm0gY29udHJvbFxyXG4gIHNlYXJjaENvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuXHJcbiAgc2hvd1NlcmFjaCA9IHRydWU7XHJcbiAgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgb3B0aW9ucyA9IFtdO1xyXG4gIGZpbHRlcmVkT3B0aW9ucyA9IFtdO1xyXG4gIC8qKiBTdWJqZWN0IHRoYXQgZW1pdHMgd2hlbiB0aGUgY29tcG9uZW50IGhhcyBiZWVuIGRlc3Ryb3llZC4gKi9cclxuICBwcm90ZWN0ZWQgX29uRGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXHJcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcclxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcblxyXG4gICAgdGhpcy5zZWFyY2hDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyk7XHJcbiAgICBfZm9jdXNNb25pdG9yLm1vbml0b3IoX2VsZW1lbnRSZWYsIHRydWUpLnN1YnNjcmliZShvcmlnaW4gPT4ge1xyXG4gICAgICBpZiAodGhpcy5mb2N1c2VkICYmICFvcmlnaW4pIHtcclxuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZm9jdXNlZCA9ICEhb3JpZ2luO1xyXG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wpIHtcclxuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoIXRoaXMuZGlzcGxheUZpZWxkcylcclxuICAgICAgdGhpcy5kaXNwbGF5RmllbGRzID0gdGhpcy5zZWFyY2hGaWVsZHM7XHJcblxyXG4gICAgdGhpcy5sb2FkTW9kZWwodGhpcy5uZ0NvbnRyb2wudmFsdWUpXHJcblxyXG4gICAgaWYgKHRoaXMucHJlbG9hZEVsZW1lbnRzQ291bnQpIHtcclxuICAgICAgdGhpcy5zZXJ2aWNlUmVmLmdldEFsbCgxLCB0aGlzLnByZWxvYWRFbGVtZW50c0NvdW50KS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChkYXRhOiBCYXNlUXVlcnlEYXRhPFQ+KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNob3dTZXJhY2ggPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMub3B0aW9ucyA9IGRhdGEuZ2V0TW9kZWxzKCk7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucztcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hDb250cm9sLnZhbHVlQ2hhbmdlc1xyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoKHJlcykgPT4ge1xyXG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVzICE9PSBudWxsICYmIHJlcy5sZW5ndGggPj0gdGhpcy5taW5MZW5ndGhUZXJtO1xyXG4gICAgICAgICAgaWYgKCFyZXN1bHQpIHtcclxuICAgICAgICAgICAgdGhpcy5vcHRpb25zID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNob3dTZXJhY2ggPSAhcmVzdWx0O1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgICB9KSxcclxuICAgICAgICBkZWJvdW5jZVRpbWUoMzAwKSxcclxuICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSBbXTtcclxuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBzd2l0Y2hNYXAoKHZhbHVlOiBzdHJpbmcpID0+XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2VSZWZcclxuICAgICAgICAgICAgLmdldEFsbCgxLCAxMCwgdGhpcy5zb3J0RmllbGRzLCBgJHt0aGlzLnNlYXJjaEZpZWxkcy5yZXBsYWNlKCcsJywgJ3wnKX1APSoke3ZhbHVlfWApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChvcHRpb25zOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IG9wdGlvbnMuZ2V0TW9kZWxzKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TZWxlY3RlZCgkZXZlbnQpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gJGV2ZW50Lm9wdGlvbi52YWx1ZTtcclxuICAgIHRoaXMuc2VhcmNoQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsU2VsZWN0ZWQuZW1pdCh2YWx1ZSk7XHJcbiAgICBpZiAodGhpcy52YWx1ZUZpZWxkIGluIHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2V0Q29udHJvbFZhbHVlKHZhbHVlW3RoaXMudmFsdWVGaWVsZF0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgc2V0Q29udHJvbFZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMubmdDb250cm9sLmNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xyXG4gIH1cclxuICBkaXNwbGF5V2l0aCh2YWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRDb25jYXRlZEZpZWxkcyh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBjbGVhclNlbGVjdGlvbigpIHtcclxuICAgIHRoaXMubW9kZWxTZWxlY3RlZC5lbWl0KG51bGwpO1xyXG4gICAgdGhpcy5zZXRDb250cm9sVmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLnNlYXJjaENvbnRyb2wuc2V0VmFsdWUobnVsbCk7XHJcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucztcclxuICB9XHJcblxyXG4gIGdldENvbmNhdGVkRmllbGRzKG9wdGlvbik6IHN0cmluZyB7XHJcbiAgICBpZiAoIW9wdGlvbikgcmV0dXJuIG51bGw7XHJcbiAgICBjb25zdCBmaWx0ZXJzQXJyID0gdGhpcy5kaXNwbGF5RmllbGRzLnNwbGl0KCcsJyk7XHJcbiAgICByZXR1cm4gZmlsdGVyc0Fyci5yZWR1Y2UoKGFjYywgY3YpID0+IHtcclxuICAgICAgcmV0dXJuIGFjYy5jb25jYXQob3B0aW9uW2N2XSArICcgJyk7XHJcbiAgICB9LCAnJyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuc2VhcmNoQ29udHJvbCA9IG51bGw7XHJcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpO1xyXG4gICAgdGhpcy5fb25EZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX29uRGVzdHJveS5jb21wbGV0ZSgpO1xyXG4gIH1cclxuICBnZXRTZWFyY2hUZXh0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYEVudGVyICR7dGhpcy5taW5MZW5ndGhUZXJtfSBjaGFyYWN0ZXJzIHRvIHN0YXJ0IHNlYXJjaGA7XHJcblxyXG4gIH1cclxuICB3cml0ZVZhbHVlKG1vZGVsOiBUIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgY29uc29sZS5sb2cobW9kZWwpO1xyXG4gICAgdGhpcy52YWx1ZSA9IG1vZGVsO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcbiAgcHJpdmF0ZSBsb2FkTW9kZWwoaWQ6IHN0cmluZykge1xyXG4gICAgLy9Mb2FkIHRoZSBtb2RlbCBmcm9tIEFQSSB0byBkaXNwbGF5IHRoZSB2YWx1ZVxyXG4gICAgbGV0IG5lZWRMb2FkID0gZmFsc2U7XHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgaWYgKCF0aGlzLnNlYXJjaENvbnRyb2wudmFsdWUpXHJcbiAgICAgICAgbmVlZExvYWQgPSB0cnVlXHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLnNlYXJjaENvbnRyb2wudmFsdWVbdGhpcy52YWx1ZUZpZWxkXSAhPT0gaWQpIHtcclxuICAgICAgICAgIG5lZWRMb2FkID0gdHJ1ZVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKG5lZWRMb2FkKSB7XHJcbiAgICAgIHRoaXMuc2VydmljZVJlZi5nZXQoaWQpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKG1vZGVsOiBUKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnMucHVzaChtb2RlbCk7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucztcclxuICAgICAgICAgIHRoaXMuc2VhcmNoQ29udHJvbC5zZXRWYWx1ZShtb2RlbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxyXG4gIDxsYWJlbD57e2xhYmVsIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGZ4RmxleD5cclxuICAgIDxpbnB1dCBtYXRJbnB1dCBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIiBbZm9ybUNvbnRyb2xdPVwic2VhcmNoQ29udHJvbFwiPlxyXG4gICAgPGJ1dHRvbiAqbmdJZj1cInNlYXJjaENvbnRyb2wudmFsdWVcIiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDbGVhclwiIChjbGljayk9XCJjbGVhclNlbGVjdGlvbigpXCI+XHJcbiAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cIm9uU2VsZWN0ZWQoJGV2ZW50KVwiXHJcbiAgICAgIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5V2l0aC5iaW5kKHRoaXMpXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwiaXNMb2FkaW5nXCI+TG9hZGluZy4uLjwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nSWY9XCIhaXNMb2FkaW5nICYmIGZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPT0gMCAmJiAhc2hvd1NlcmFjaFwiIGRpc2FibGVkPk5vdCBmb3VuZDwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nSWY9XCJzaG93U2VyYWNoXCIgZGlzYWJsZWQ+e3tnZXRTZWFyY2hUZXh0KCl9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgZmlsdGVyZWRPcHRpb25zLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb25cIj5cclxuICAgICAgICAgIDxzcGFuPjxiPnt7Z2V0Q29uY2F0ZWRGaWVsZHMob3B0aW9uKX19PC9iPjwvc3Bhbj5cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG48L2Rpdj4iXX0=
|
package/esm2022/lib/core.mjs
DELETED
@@ -1,6 +0,0 @@
|
|
1
|
-
export * from './components';
|
2
|
-
export * from './decorators';
|
3
|
-
export * from './models';
|
4
|
-
export * from './rsl-material-module';
|
5
|
-
export * from './services';
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jvc29mdGxhYi9tYXRlcmlhbC9zcmMvbGliL2NvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9yc2wtbWF0ZXJpYWwtbW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcyc7XHJcblxyXG4iXX0=
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import { CellTextAlign, GridLayoutFormat } from '@rosoftlab/core';
|
2
|
-
export function GridLayout(translateKey, width, grow = 0, shrink = 0, subProperty, formating = GridLayoutFormat.none, format = '', order = 0, textAlign = CellTextAlign.left) {
|
3
|
-
return (target, propertyName) => {
|
4
|
-
const annotations = Reflect.getMetadata('GridLayout', target) || [];
|
5
|
-
let propName = propertyName;
|
6
|
-
if (subProperty) {
|
7
|
-
propName = propertyName.toString() + '.' + subProperty;
|
8
|
-
}
|
9
|
-
annotations.push({
|
10
|
-
propertyName: propName,
|
11
|
-
translateKey,
|
12
|
-
width,
|
13
|
-
grow,
|
14
|
-
shrink,
|
15
|
-
formating,
|
16
|
-
format,
|
17
|
-
order,
|
18
|
-
textAlign
|
19
|
-
});
|
20
|
-
Reflect.defineMetadata('GridLayout', annotations, target);
|
21
|
-
};
|
22
|
-
}
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1sYXlvdXQuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcm9zb2Z0bGFiL21hdGVyaWFsL3NyYy9saWIvZGVjb3JhdG9ycy9ncmlkLWxheW91dC5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE1BQU0sVUFBVSxVQUFVLENBQUMsWUFBb0IsRUFBRSxLQUFxQixFQUNsRSxPQUFjLENBQUMsRUFBRSxTQUFnQixDQUFDLEVBQUUsV0FBMkIsRUFDL0QsWUFBOEIsZ0JBQWdCLENBQUMsSUFBSSxFQUNuRCxTQUFpQixFQUFFLEVBQUUsUUFBZ0IsQ0FBQyxFQUFFLFlBQTJCLGFBQWEsQ0FBQyxJQUFJO0lBQ3JGLE9BQU8sQ0FBQyxNQUFXLEVBQUUsWUFBNkIsRUFBRSxFQUFFO1FBQ2xELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNwRSxJQUFJLFFBQVEsR0FBRyxZQUFZLENBQUE7UUFDM0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNkLFFBQVEsR0FBRyxZQUFZLENBQUMsUUFBUSxFQUFFLEdBQUcsR0FBRyxHQUFHLFdBQVcsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsV0FBVyxDQUFDLElBQUksQ0FBQztZQUNiLFlBQVksRUFBRSxRQUFRO1lBQ3RCLFlBQVk7WUFDWixLQUFLO1lBQ0wsSUFBSTtZQUNKLE1BQU07WUFDTixTQUFTO1lBQ1QsTUFBTTtZQUNOLEtBQUs7WUFDTCxTQUFTO1NBQ1osQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlELENBQUMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZWxsVGV4dEFsaWduLCBHcmlkTGF5b3V0Rm9ybWF0IH0gZnJvbSAnQHJvc29mdGxhYi9jb3JlJztcclxuZXhwb3J0IGZ1bmN0aW9uIEdyaWRMYXlvdXQodHJhbnNsYXRlS2V5OiBzdHJpbmcsIHdpZHRoPzogbnVtYmVyIHwgbnVsbCxcclxuICAgIGdyb3c6IDAgfCAxID0gMCwgc2hyaW5rOiAwIHwgMSA9IDAsIHN1YlByb3BlcnR5Pzogc3RyaW5nIHwgbnVsbCxcclxuICAgIGZvcm1hdGluZzogR3JpZExheW91dEZvcm1hdCA9IEdyaWRMYXlvdXRGb3JtYXQubm9uZSxcclxuICAgIGZvcm1hdDogc3RyaW5nID0gJycsIG9yZGVyOiBudW1iZXIgPSAwLCB0ZXh0QWxpZ246IENlbGxUZXh0QWxpZ24gPSBDZWxsVGV4dEFsaWduLmxlZnQpIHtcclxuICAgIHJldHVybiAodGFyZ2V0OiBhbnksIHByb3BlcnR5TmFtZTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XHJcbiAgICAgICAgY29uc3QgYW5ub3RhdGlvbnMgPSBSZWZsZWN0LmdldE1ldGFkYXRhKCdHcmlkTGF5b3V0JywgdGFyZ2V0KSB8fCBbXTtcclxuICAgICAgICBsZXQgcHJvcE5hbWUgPSBwcm9wZXJ0eU5hbWVcclxuICAgICAgICBpZiAoc3ViUHJvcGVydHkpIHtcclxuICAgICAgICAgICAgcHJvcE5hbWUgPSBwcm9wZXJ0eU5hbWUudG9TdHJpbmcoKSArICcuJyArIHN1YlByb3BlcnR5O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhbm5vdGF0aW9ucy5wdXNoKHtcclxuICAgICAgICAgICAgcHJvcGVydHlOYW1lOiBwcm9wTmFtZSxcclxuICAgICAgICAgICAgdHJhbnNsYXRlS2V5LFxyXG4gICAgICAgICAgICB3aWR0aCxcclxuICAgICAgICAgICAgZ3JvdyxcclxuICAgICAgICAgICAgc2hyaW5rLFxyXG4gICAgICAgICAgICBmb3JtYXRpbmcsXHJcbiAgICAgICAgICAgIGZvcm1hdCxcclxuICAgICAgICAgICAgb3JkZXIsXHJcbiAgICAgICAgICAgIHRleHRBbGlnblxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKCdHcmlkTGF5b3V0JywgYW5ub3RhdGlvbnMsIHRhcmdldCk7XHJcbiAgICB9O1xyXG59XHJcbiJdfQ==
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export { GridLayout } from './grid-layout.decorator';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9kZWNvcmF0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEdyaWRMYXlvdXQgfSBmcm9tICcuL2dyaWQtbGF5b3V0LmRlY29yYXRvcic7XHJcbiJdfQ==
|
@@ -1,18 +0,0 @@
|
|
1
|
-
import { CellTextAlign, GridLayoutFormat } from '@rosoftlab/core';
|
2
|
-
export class GridLayoutModel {
|
3
|
-
constructor(propertyName, translateKey = null, width = null, grow = 0, shrink = 0, formating = GridLayoutFormat.none, format = '', order = 0, textAlign = CellTextAlign.left) {
|
4
|
-
this.formating = GridLayoutFormat.none;
|
5
|
-
this.order = 0;
|
6
|
-
this.textAlign = CellTextAlign.left;
|
7
|
-
this.propertyName = propertyName;
|
8
|
-
this.translateKey = translateKey;
|
9
|
-
this.width = width;
|
10
|
-
this.grow = grow;
|
11
|
-
this.shrink = shrink;
|
12
|
-
this.formating = formating;
|
13
|
-
this.format = format;
|
14
|
-
this.order = order;
|
15
|
-
this.textAlign = textAlign;
|
16
|
-
}
|
17
|
-
}
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1sYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9tb2RlbHMvZ3JpZC1sYXlvdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE1BQU0sT0FBTyxlQUFlO0lBQ3hCLFlBQ0ksWUFBb0IsRUFBRSxlQUFvQixJQUFJLEVBQUUsUUFBYSxJQUFJLEVBQUUsT0FBYyxDQUFDLEVBQUUsU0FBZ0IsQ0FBQyxFQUNyRyxZQUE4QixnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUMzRSxZQUEyQixhQUFhLENBQUMsSUFBSTtRQWdCMUMsY0FBUyxHQUFxQixnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7UUFFcEQsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixjQUFTLEdBQWtCLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFsQmpELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQy9CLENBQUM7Q0FVSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENlbGxUZXh0QWxpZ24sIEdyaWRMYXlvdXRGb3JtYXQgfSBmcm9tICdAcm9zb2Z0bGFiL2NvcmUnO1xyXG5leHBvcnQgY2xhc3MgR3JpZExheW91dE1vZGVsIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3BlcnR5TmFtZTogc3RyaW5nLCB0cmFuc2xhdGVLZXk6IGFueSA9IG51bGwsIHdpZHRoOiBhbnkgPSBudWxsLCBncm93OiAwIHwgMSA9IDAsIHNocmluazogMCB8IDEgPSAwLFxyXG4gICAgICAgIGZvcm1hdGluZzogR3JpZExheW91dEZvcm1hdCA9IEdyaWRMYXlvdXRGb3JtYXQubm9uZSwgZm9ybWF0ID0gJycsIG9yZGVyID0gMCxcclxuICAgICAgICB0ZXh0QWxpZ246IENlbGxUZXh0QWxpZ24gPSBDZWxsVGV4dEFsaWduLmxlZnQpIHtcclxuICAgICAgICB0aGlzLnByb3BlcnR5TmFtZSA9IHByb3BlcnR5TmFtZTtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZUtleSA9IHRyYW5zbGF0ZUtleTtcclxuICAgICAgICB0aGlzLndpZHRoID0gd2lkdGg7XHJcbiAgICAgICAgdGhpcy5ncm93ID0gZ3JvdztcclxuICAgICAgICB0aGlzLnNocmluayA9IHNocmluaztcclxuICAgICAgICB0aGlzLmZvcm1hdGluZyA9IGZvcm1hdGluZztcclxuICAgICAgICB0aGlzLmZvcm1hdCA9IGZvcm1hdDtcclxuICAgICAgICB0aGlzLm9yZGVyID0gb3JkZXI7XHJcbiAgICAgICAgdGhpcy50ZXh0QWxpZ24gPSB0ZXh0QWxpZ247XHJcbiAgICB9XHJcbiAgICBwdWJsaWMgcHJvcGVydHlOYW1lOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlS2V5OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgd2lkdGg6IG51bWJlcjtcclxuICAgIHB1YmxpYyBncm93OiAwIHwgMTtcclxuICAgIHB1YmxpYyBzaHJpbms6IDAgfCAxO1xyXG4gICAgcHVibGljIGZvcm1hdGluZzogR3JpZExheW91dEZvcm1hdCA9IEdyaWRMYXlvdXRGb3JtYXQubm9uZTtcclxuICAgIHB1YmxpYyBmb3JtYXQ6IHN0cmluZztcclxuICAgIHB1YmxpYyBvcmRlcjogbnVtYmVyID0gMDtcclxuICAgIHB1YmxpYyB0ZXh0QWxpZ246IENlbGxUZXh0QWxpZ24gPSBDZWxsVGV4dEFsaWduLmxlZnQ7XHJcbn1cclxuIl19
|
@@ -1,3 +0,0 @@
|
|
1
|
-
export { GridLayoutModel } from './grid-layout';
|
2
|
-
export { MaterialBaseModel } from './material-base-model';
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEdyaWRMYXlvdXRNb2RlbCB9IGZyb20gJy4vZ3JpZC1sYXlvdXQnXHJcbmV4cG9ydCB7IE1hdGVyaWFsQmFzZU1vZGVsIH0gZnJvbSAnLi9tYXRlcmlhbC1iYXNlLW1vZGVsJ1xyXG5cclxuIl19
|
@@ -1,17 +0,0 @@
|
|
1
|
-
import { BaseModel } from '@rosoftlab/core';
|
2
|
-
import { GridLayoutModel } from './grid-layout';
|
3
|
-
export class MaterialBaseModel extends BaseModel {
|
4
|
-
getGridLayout() {
|
5
|
-
const result = Array();
|
6
|
-
const gridLayout = Reflect.getMetadata('GridLayout', this);
|
7
|
-
if (gridLayout) {
|
8
|
-
for (const layout of gridLayout) {
|
9
|
-
const data = new GridLayoutModel(layout.propertyName, layout.translateKey, layout.width, layout.shrink, layout.grow, layout.formating, layout.format, layout.order, layout.textAlign);
|
10
|
-
result.push(data);
|
11
|
-
}
|
12
|
-
}
|
13
|
-
return result.sort(function (a, b) { return a.order - b.order; });
|
14
|
-
//result;
|
15
|
-
}
|
16
|
-
}
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtYmFzZS1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jvc29mdGxhYi9tYXRlcmlhbC9zcmMvbGliL21vZGVscy9tYXRlcmlhbC1iYXNlLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxTQUFTO0lBRXJDLGFBQWE7UUFDaEIsTUFBTSxNQUFNLEdBQUcsS0FBSyxFQUFtQixDQUFDO1FBQ3hDLE1BQU0sVUFBVSxHQUFRLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hFLElBQUksVUFBVSxFQUFFLENBQUM7WUFDYixLQUFLLE1BQU0sTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUM5QixNQUFNLElBQUksR0FBRyxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZLEVBQ3JFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxFQUN4QyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ3JFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEIsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDakUsU0FBUztJQUNiLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNb2RlbCB9IGZyb20gJ0Byb3NvZnRsYWIvY29yZSc7XHJcbmltcG9ydCB7IEdyaWRMYXlvdXRNb2RlbCB9IGZyb20gJy4vZ3JpZC1sYXlvdXQnO1xyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxCYXNlTW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWwge1xyXG5cclxuICAgIHB1YmxpYyBnZXRHcmlkTGF5b3V0KCk6IEdyaWRMYXlvdXRNb2RlbFtdIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSBBcnJheTxHcmlkTGF5b3V0TW9kZWw+KCk7XHJcbiAgICAgICAgY29uc3QgZ3JpZExheW91dDogYW55ID0gUmVmbGVjdC5nZXRNZXRhZGF0YSgnR3JpZExheW91dCcsIHRoaXMpO1xyXG4gICAgICAgIGlmIChncmlkTGF5b3V0KSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgbGF5b3V0IG9mIGdyaWRMYXlvdXQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBuZXcgR3JpZExheW91dE1vZGVsKGxheW91dC5wcm9wZXJ0eU5hbWUsIGxheW91dC50cmFuc2xhdGVLZXksXHJcbiAgICAgICAgICAgICAgICAgICAgbGF5b3V0LndpZHRoLCBsYXlvdXQuc2hyaW5rLCBsYXlvdXQuZ3JvdyxcclxuICAgICAgICAgICAgICAgICAgICBsYXlvdXQuZm9ybWF0aW5nLCBsYXlvdXQuZm9ybWF0LCBsYXlvdXQub3JkZXIsIGxheW91dC50ZXh0QWxpZ24pO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goZGF0YSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5zb3J0KGZ1bmN0aW9uIChhLCBiKSB7IHJldHVybiBhLm9yZGVyIC0gYi5vcmRlcjsgfSlcclxuICAgICAgICAvL3Jlc3VsdDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
@@ -1,105 +0,0 @@
|
|
1
|
-
import { DragDropModule } from '@angular/cdk/drag-drop';
|
2
|
-
import { PortalModule } from '@angular/cdk/portal';
|
3
|
-
import { CdkStepperModule } from '@angular/cdk/stepper';
|
4
|
-
import { CommonModule } from '@angular/common';
|
5
|
-
import { NgModule } from '@angular/core';
|
6
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
7
|
-
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
8
|
-
import { MatBadgeModule } from '@angular/material/badge';
|
9
|
-
import { MatButtonModule } from '@angular/material/button';
|
10
|
-
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
11
|
-
import { MatCardModule } from '@angular/material/card';
|
12
|
-
import { MatCheckboxModule } from '@angular/material/checkbox';
|
13
|
-
import { MatChipsModule } from '@angular/material/chips';
|
14
|
-
import { MatNativeDateModule, MatOptionModule, MatRippleModule } from '@angular/material/core';
|
15
|
-
import { MatDatepickerModule } from '@angular/material/datepicker';
|
16
|
-
import { MatDialogModule } from '@angular/material/dialog';
|
17
|
-
import { MatDividerModule } from '@angular/material/divider';
|
18
|
-
import { MatExpansionModule } from '@angular/material/expansion';
|
19
|
-
import { MatGridListModule } from '@angular/material/grid-list';
|
20
|
-
import { MatIconModule } from '@angular/material/icon';
|
21
|
-
import { MatInputModule } from '@angular/material/input';
|
22
|
-
import { MatListModule } from '@angular/material/list';
|
23
|
-
import { MatMenuModule } from '@angular/material/menu';
|
24
|
-
import { MatPaginatorModule } from '@angular/material/paginator';
|
25
|
-
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
26
|
-
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
27
|
-
import { MatRadioModule } from '@angular/material/radio';
|
28
|
-
import { MatSelectModule } from '@angular/material/select';
|
29
|
-
import { MatSidenavModule } from '@angular/material/sidenav';
|
30
|
-
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
31
|
-
import { MatSliderModule } from '@angular/material/slider';
|
32
|
-
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
33
|
-
import { MatSortModule } from '@angular/material/sort';
|
34
|
-
import { MatStepperModule } from '@angular/material/stepper';
|
35
|
-
import { MatTableModule } from '@angular/material/table';
|
36
|
-
import { MatTabsModule } from '@angular/material/tabs';
|
37
|
-
import { MatToolbarModule } from '@angular/material/toolbar';
|
38
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
39
|
-
import { MatTreeModule } from '@angular/material/tree';
|
40
|
-
import { TranslateModule } from '@ngx-translate/core';
|
41
|
-
import { GenericTableComponent, SearchableDropdownComponent } from './components';
|
42
|
-
import * as i0 from "@angular/core";
|
43
|
-
const COMMON_MODULES = [
|
44
|
-
CommonModule,
|
45
|
-
ReactiveFormsModule,
|
46
|
-
MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
|
47
|
-
MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
|
48
|
-
MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
|
49
|
-
MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
|
50
|
-
MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
|
51
|
-
MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
|
52
|
-
CdkStepperModule
|
53
|
-
];
|
54
|
-
export class RSLMaterialModule {
|
55
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: RSLMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
56
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: RSLMaterialModule, declarations: [GenericTableComponent,
|
57
|
-
SearchableDropdownComponent], imports: [CommonModule,
|
58
|
-
ReactiveFormsModule,
|
59
|
-
MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
|
60
|
-
MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
|
61
|
-
MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
|
62
|
-
MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
|
63
|
-
MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
|
64
|
-
MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
|
65
|
-
CdkStepperModule, TranslateModule], exports: [CommonModule,
|
66
|
-
ReactiveFormsModule,
|
67
|
-
MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
|
68
|
-
MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
|
69
|
-
MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
|
70
|
-
MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
|
71
|
-
MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
|
72
|
-
MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
|
73
|
-
CdkStepperModule, GenericTableComponent,
|
74
|
-
SearchableDropdownComponent,
|
75
|
-
TranslateModule] }); }
|
76
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: RSLMaterialModule, imports: [COMMON_MODULES, TranslateModule, CommonModule,
|
77
|
-
ReactiveFormsModule,
|
78
|
-
MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
|
79
|
-
MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
|
80
|
-
MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
|
81
|
-
MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
|
82
|
-
MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
|
83
|
-
MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
|
84
|
-
CdkStepperModule, TranslateModule] }); }
|
85
|
-
}
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: RSLMaterialModule, decorators: [{
|
87
|
-
type: NgModule,
|
88
|
-
args: [{
|
89
|
-
declarations: [
|
90
|
-
GenericTableComponent,
|
91
|
-
SearchableDropdownComponent,
|
92
|
-
],
|
93
|
-
imports: [
|
94
|
-
...COMMON_MODULES,
|
95
|
-
TranslateModule
|
96
|
-
],
|
97
|
-
exports: [
|
98
|
-
...COMMON_MODULES,
|
99
|
-
GenericTableComponent,
|
100
|
-
SearchableDropdownComponent,
|
101
|
-
TranslateModule
|
102
|
-
],
|
103
|
-
}]
|
104
|
-
}] });
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnNsLW1hdGVyaWFsLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Jvc29mdGxhYi9tYXRlcmlhbC9zcmMvbGliL3JzbC1tYXRlcmlhbC1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FB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YSxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxtQkFBbUI7WUFDcEksZUFBZSxFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLGFBQWE7WUFDckUsY0FBYyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CO1lBQ2pFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLHdCQUF3QixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLGdCQUFnQjtZQUN0SSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCO1lBQ3hILGdCQUFnQixFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCO1lBQ2xJLGdCQUFnQixFQWdCZCxlQUFlOzsyRkFFTixpQkFBaUI7a0JBZjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxjQUFjO3dCQUNqQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxjQUFjO3dCQUNqQixxQkFBcUI7d0JBQ3JCLDJCQUEyQjt3QkFDM0IsZUFBZTtxQkFBQztpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQ2RrU3RlcHBlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zdGVwcGVyJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xyXG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBNYXRDaGlwc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcclxuaW1wb3J0IHsgTWF0TmF0aXZlRGF0ZU1vZHVsZSwgTWF0T3B0aW9uTW9kdWxlLCBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXREaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGl2aWRlcic7XHJcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XHJcbmltcG9ydCB7IE1hdEdyaWRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZ3JpZC1saXN0JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XHJcbmltcG9ydCB7IE1hdFJhZGlvTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcmFkaW8nO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XHJcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcclxuaW1wb3J0IHsgTWF0U2xpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGVyJztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBNYXRTb3J0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XHJcbmltcG9ydCB7IE1hdFN0ZXBwZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcclxuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1hdFRyZWVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEdlbmVyaWNUYWJsZUNvbXBvbmVudCwgU2VhcmNoYWJsZURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcclxuXHJcbmNvbnN0IENPTU1PTl9NT0RVTEVTID0gW1xyXG4gIENvbW1vbk1vZHVsZSxcclxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsIE1hdENhcmRNb2R1bGUsIE1hdENoZWNrYm94TW9kdWxlLCBNYXRDaGlwc01vZHVsZSwgTWF0RGF0ZXBpY2tlck1vZHVsZSxcclxuICBNYXREaWFsb2dNb2R1bGUsIE1hdEV4cGFuc2lvbk1vZHVsZSwgTWF0R3JpZExpc3RNb2R1bGUsIE1hdEljb25Nb2R1bGUsXHJcbiAgTWF0SW5wdXRNb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdE1lbnVNb2R1bGUsIE1hdE5hdGl2ZURhdGVNb2R1bGUsXHJcbiAgTWF0UGFnaW5hdG9yTW9kdWxlLCBNYXRQcm9ncmVzc0Jhck1vZHVsZSwgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLCBNYXRSYWRpb01vZHVsZSwgTWF0UmlwcGxlTW9kdWxlLCBNYXRTZWxlY3RNb2R1bGUsIE1hdFNpZGVuYXZNb2R1bGUsXHJcbiAgTWF0U2xpZGVyTW9kdWxlLCBNYXRTbGlkZVRvZ2dsZU1vZHVsZSwgTWF0U25hY2tCYXJNb2R1bGUsIE1hdFNvcnRNb2R1bGUsIE1hdFRhYmxlTW9kdWxlLCBNYXRUYWJzTW9kdWxlLCBNYXRUb29sYmFyTW9kdWxlLFxyXG4gIE1hdFRvb2x0aXBNb2R1bGUsIE1hdE9wdGlvbk1vZHVsZSwgRHJhZ0Ryb3BNb2R1bGUsIE1hdERpdmlkZXJNb2R1bGUsIFBvcnRhbE1vZHVsZSwgTWF0VHJlZU1vZHVsZSwgTWF0QmFkZ2VNb2R1bGUsIE1hdFN0ZXBwZXJNb2R1bGUsXHJcbiAgQ2RrU3RlcHBlck1vZHVsZVxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEdlbmVyaWNUYWJsZUNvbXBvbmVudCxcclxuICAgIFNlYXJjaGFibGVEcm9wZG93bkNvbXBvbmVudCxcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIC4uLkNPTU1PTl9NT0RVTEVTLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICAuLi5DT01NT05fTU9EVUxFUyxcclxuICAgIEdlbmVyaWNUYWJsZUNvbXBvbmVudCxcclxuICAgIFNlYXJjaGFibGVEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSU0xNYXRlcmlhbE1vZHVsZSB7XHJcbn1cclxuIl19
|
@@ -1,110 +0,0 @@
|
|
1
|
-
import { HttpErrorResponse } from '@angular/common/http';
|
2
|
-
import { Injectable } from '@angular/core';
|
3
|
-
import { from } from 'rxjs';
|
4
|
-
import Swal from 'sweetalert2';
|
5
|
-
import * as i0 from "@angular/core";
|
6
|
-
/**
|
7
|
-
* Async modal dialog service
|
8
|
-
* DialogService makes this app easier to test by faking this service.
|
9
|
-
* TODO: better modal implementation that doesn't use window.confirm
|
10
|
-
*/
|
11
|
-
export class DialogServiceMaterial {
|
12
|
-
/**
|
13
|
-
* Ask user to confirm an action. `message` explains the action and choices.
|
14
|
-
* Returns observable resolving to `true`=confirm or `false`=cancel
|
15
|
-
*/
|
16
|
-
constructor() { }
|
17
|
-
confirm(message, text, confirmButtonText = 'Delete', cancelButtonText = 'Cancel') {
|
18
|
-
const confirmation = Swal.fire({
|
19
|
-
title: message || 'Are you sure?',
|
20
|
-
icon: 'warning',
|
21
|
-
text: text || '',
|
22
|
-
showCancelButton: true,
|
23
|
-
confirmButtonText: confirmButtonText,
|
24
|
-
cancelButtonText: cancelButtonText,
|
25
|
-
customClass: {
|
26
|
-
confirmButton: 'btn btn-red btn-fill btn-wd',
|
27
|
-
cancelButton: 'btn btn-grey btn-fill btn-wd',
|
28
|
-
},
|
29
|
-
buttonsStyling: false,
|
30
|
-
reverseButtons: true
|
31
|
-
})
|
32
|
-
.then((result) => {
|
33
|
-
if (result.value) {
|
34
|
-
return true;
|
35
|
-
}
|
36
|
-
else {
|
37
|
-
return false;
|
38
|
-
}
|
39
|
-
}).catch();
|
40
|
-
return from(confirmation);
|
41
|
-
}
|
42
|
-
showSaveMessage(message, title) {
|
43
|
-
const confirmation = Swal.fire({
|
44
|
-
icon: 'success',
|
45
|
-
title: message,
|
46
|
-
timer: 2000,
|
47
|
-
showConfirmButton: false,
|
48
|
-
// customClass: 'overflow-hidden',
|
49
|
-
buttonsStyling: false
|
50
|
-
}).then(() => {
|
51
|
-
return true;
|
52
|
-
}, () => {
|
53
|
-
return false;
|
54
|
-
}).catch();
|
55
|
-
return from(confirmation);
|
56
|
-
}
|
57
|
-
showRegisteredMessage(message, title) {
|
58
|
-
const confirmation = Swal.fire({
|
59
|
-
icon: 'success',
|
60
|
-
title: message,
|
61
|
-
showConfirmButton: true,
|
62
|
-
customClass: {
|
63
|
-
confirmButton: 'btn btn-success',
|
64
|
-
},
|
65
|
-
buttonsStyling: false
|
66
|
-
}).then(() => {
|
67
|
-
return true;
|
68
|
-
}, () => {
|
69
|
-
return false;
|
70
|
-
}).catch();
|
71
|
-
return from(confirmation);
|
72
|
-
}
|
73
|
-
showErrorMessage(e, message) {
|
74
|
-
if (!message) {
|
75
|
-
message = 'Validation errors';
|
76
|
-
}
|
77
|
-
if (e instanceof HttpErrorResponse) {
|
78
|
-
// Validation errors
|
79
|
-
if (e.status === 400) {
|
80
|
-
const errors = e.error.errors;
|
81
|
-
if (errors) {
|
82
|
-
errors.forEach(error => {
|
83
|
-
message += error.field + ' ' + error.detail + '\n';
|
84
|
-
});
|
85
|
-
}
|
86
|
-
}
|
87
|
-
}
|
88
|
-
const confirmation = Swal.fire({
|
89
|
-
icon: 'error',
|
90
|
-
title: message,
|
91
|
-
// timer: 2000,
|
92
|
-
showConfirmButton: true,
|
93
|
-
customClass: {
|
94
|
-
confirmButton: 'btn btn-success',
|
95
|
-
},
|
96
|
-
buttonsStyling: false
|
97
|
-
}).then(() => {
|
98
|
-
return true;
|
99
|
-
}, () => {
|
100
|
-
return false;
|
101
|
-
}).catch();
|
102
|
-
return from(confirmation);
|
103
|
-
}
|
104
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DialogServiceMaterial, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
105
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DialogServiceMaterial }); }
|
106
|
-
}
|
107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DialogServiceMaterial, decorators: [{
|
108
|
-
type: Injectable
|
109
|
-
}], ctorParameters: () => [] });
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UtaW1wbGVtZW50YXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yb3NvZnRsYWIvbWF0ZXJpYWwvc3JjL2xpYi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZS1pbXBsZW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxJQUFJLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDOztBQUcvQjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQzs7O09BR0c7SUFDSCxnQkFBZ0IsQ0FBQztJQUNqQixPQUFPLENBQUMsT0FBZ0IsRUFBRSxJQUFhLEVBQ3JDLG9CQUE0QixRQUFRLEVBQ3BDLG1CQUEyQixRQUFRO1FBQ25DLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDN0IsS0FBSyxFQUFFLE9BQU8sSUFBSSxlQUFlO1lBQ2pDLElBQUksRUFBRSxTQUFTO1lBQ2YsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFO1lBQ2hCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsaUJBQWlCLEVBQUUsaUJBQWlCO1lBQ3BDLGdCQUFnQixFQUFFLGdCQUFnQjtZQUNsQyxXQUFXLEVBQUU7Z0JBQ1gsYUFBYSxFQUFFLDZCQUE2QjtnQkFDNUMsWUFBWSxFQUFFLDhCQUE4QjthQUM3QztZQUNELGNBQWMsRUFBRSxLQUFLO1lBQ3JCLGNBQWMsRUFBRSxJQUFJO1NBQ3JCLENBQUM7YUFFQyxJQUFJLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUNwQixJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsT0FBTyxJQUFJ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bnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcm9zb2Z0bGFiL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XHJcbmRlY2xhcmUgdmFyICQ6IGFueTtcclxuXHJcbi8qKlxyXG4gKiBBc3luYyBtb2RhbCBkaWFsb2cgc2VydmljZVxyXG4gKiBEaWFsb2dTZXJ2aWNlIG1ha2VzIHRoaXMgYXBwIGVhc2llciB0byB0ZXN0IGJ5IGZha2luZyB0aGlzIHNlcnZpY2UuXHJcbiAqIFRPRE86IGJldHRlciBtb2RhbCBpbXBsZW1lbnRhdGlvbiB0aGF0IGRvZXNuJ3QgdXNlIHdpbmRvdy5jb25maXJtXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dTZXJ2aWNlTWF0ZXJpYWwgaW1wbGVtZW50cyBEaWFsb2dTZXJ2aWNlIHtcclxuICAvKipcclxuICAgKiBBc2sgdXNlciB0byBjb25maXJtIGFuIGFjdGlvbi4gYG1lc3NhZ2VgIGV4cGxhaW5zIHRoZSBhY3Rpb24gYW5kIGNob2ljZXMuXHJcbiAgICogUmV0dXJucyBvYnNlcnZhYmxlIHJlc29sdmluZyB0byBgdHJ1ZWA9Y29uZmlybSBvciBgZmFsc2VgPWNhbmNlbFxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcbiAgY29uZmlybShtZXNzYWdlPzogc3RyaW5nLCB0ZXh0Pzogc3RyaW5nLFxyXG4gICAgY29uZmlybUJ1dHRvblRleHQ6IHN0cmluZyA9ICdEZWxldGUnLFxyXG4gICAgY2FuY2VsQnV0dG9uVGV4dDogc3RyaW5nID0gJ0NhbmNlbCcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIGNvbnN0IGNvbmZpcm1hdGlvbiA9IFN3YWwuZmlyZSh7XHJcbiAgICAgIHRpdGxlOiBtZXNzYWdlIHx8ICdBcmUgeW91IHN1cmU/JyxcclxuICAgICAgaWNvbjogJ3dhcm5pbmcnLFxyXG4gICAgICB0ZXh0OiB0ZXh0IHx8ICcnLFxyXG4gICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxyXG4gICAgICBjb25maXJtQnV0dG9uVGV4dDogY29uZmlybUJ1dHRvblRleHQsXHJcbiAgICAgIGNhbmNlbEJ1dHRvblRleHQ6IGNhbmNlbEJ1dHRvblRleHQsXHJcbiAgICAgIGN1c3RvbUNsYXNzOiB7XHJcbiAgICAgICAgY29uZmlybUJ1dHRvbjogJ2J0biBidG4tcmVkIGJ0bi1maWxsIGJ0bi13ZCcsXHJcbiAgICAgICAgY2FuY2VsQnV0dG9uOiAnYnRuIGJ0bi1ncmV5IGJ0bi1maWxsIGJ0bi13ZCcsXHJcbiAgICAgIH0sXHJcbiAgICAgIGJ1dHRvbnNTdHlsaW5nOiBmYWxzZSxcclxuICAgICAgcmV2ZXJzZUJ1dHRvbnM6IHRydWVcclxuICAgIH0pXHJcblxyXG4gICAgICAudGhlbigocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbHVlKSB7XHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSkuY2F0Y2goKTtcclxuICAgIHJldHVybiBmcm9tKGNvbmZpcm1hdGlvbik7XHJcbiAgfVxyXG4gIHNob3dTYXZlTWVzc2FnZShtZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3QgY29uZmlybWF0aW9uID0gU3dhbC5maXJlKHtcclxuICAgICAgaWNvbjogJ3N1Y2Nlc3MnLFxyXG4gICAgICB0aXRsZTogbWVzc2FnZSxcclxuICAgICAgdGltZXI6IDIwMDAsXHJcbiAgICAgIHNob3dDb25maXJtQnV0dG9uOiBmYWxzZSxcclxuICAgICAgLy8gY3VzdG9tQ2xhc3M6ICdvdmVyZmxvdy1oaWRkZW4nLFxyXG4gICAgICBidXR0b25zU3R5bGluZzogZmFsc2VcclxuICAgIH0pLnRoZW4oKCkgPT4ge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0sICgpID0+IHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSkuY2F0Y2goKTtcclxuICAgIHJldHVybiBmcm9tKGNvbmZpcm1hdGlvbik7XHJcbiAgfVxyXG4gIHNob3dSZWdpc3RlcmVkTWVzc2FnZShtZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3QgY29uZmlybWF0aW9uID0gU3dhbC5maXJlKHtcclxuICAgICAgaWNvbjogJ3N1Y2Nlc3MnLFxyXG4gICAgICB0aXRsZTogbWVzc2FnZSxcclxuICAgICAgc2hvd0NvbmZpcm1CdXR0b246IHRydWUsXHJcbiAgICAgIGN1c3RvbUNsYXNzOiB7XHJcbiAgICAgICAgY29uZmlybUJ1dHRvbjogJ2J0biBidG4tc3VjY2VzcycsXHJcbiAgICAgIH0sXHJcbiAgICAgIGJ1dHRvbnNTdHlsaW5nOiBmYWxzZVxyXG4gICAgfSkudGhlbigoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSwgKCkgPT4ge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9KS5jYXRjaCgpO1xyXG4gICAgcmV0dXJuIGZyb20oY29uZmlybWF0aW9uKTtcclxuICB9XHJcblxyXG4gIHNob3dFcnJvck1lc3NhZ2UoZTogYW55LCBtZXNzYWdlPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBpZiAoIW1lc3NhZ2UpIHtcclxuICAgICAgbWVzc2FnZSA9ICdWYWxpZGF0aW9uIGVycm9ycyc7XHJcbiAgICB9XHJcbiAgICBpZiAoZSBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XHJcbiAgICAgIC8vIFZhbGlkYXRpb24gZXJyb3JzXHJcbiAgICAgIGlmIChlLnN0YXR1cyA9PT0gNDAwKSB7XHJcbiAgICAgICAgY29uc3QgZXJyb3JzID0gZS5lcnJvci5lcnJvcnM7XHJcbiAgICAgICAgaWYgKGVycm9ycykge1xyXG4gICAgICAgICAgZXJyb3JzLmZvckVhY2goZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICBtZXNzYWdlICs9IGVycm9yLmZpZWxkICsgJyAnICsgZXJyb3IuZGV0YWlsICsgJ1xcbic7XHJcbiAgICAgICAgICB9KTsgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgY29uc3QgY29uZmlybWF0aW9uID0gU3dhbC5maXJlKHtcclxuICAgICAgaWNvbjogJ2Vycm9yJyxcclxuICAgICAgdGl0bGU6IG1lc3NhZ2UsXHJcbiAgICAgIC8vIHRpbWVyOiAyMDAwLFxyXG4gICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgY3VzdG9tQ2xhc3M6IHtcclxuICAgICAgICBjb25maXJtQnV0dG9uOiAnYnRuIGJ0bi1zdWNjZXNzJyxcclxuICAgICAgfSxcclxuICAgICAgYnV0dG9uc1N0eWxpbmc6IGZhbHNlXHJcbiAgICB9KS50aGVuKCgpID0+IHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9LCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0pLmNhdGNoKCk7XHJcbiAgICByZXR1cm4gZnJvbShjb25maXJtYXRpb24pO1xyXG4gIH0gXHJcbn1cclxuXHJcbiJdfQ==
|