@meshmakers/shared-ui 3.1.139-0 → 3.1.143-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/mm-autocomplete-input/mm-autocomplete-input.component.mjs +302 -0
- package/esm2022/lib/mm-breadcrumb/mm-breadcrumb.component.mjs +108 -0
- package/esm2022/lib/mm-confirmation-window/mm-confirmation-window.component.mjs +75 -0
- package/esm2022/lib/mm-entity-select-input/mm-entity-select-input.component.mjs +293 -0
- package/esm2022/lib/{mm-shared-ui/mm-message-details → mm-message-details}/mm-message-details.component.mjs +4 -4
- package/esm2022/lib/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component.mjs +316 -0
- package/esm2022/lib/mm-notification-bar/mm-notification-bar.component.mjs +40 -0
- package/esm2022/lib/mm-progress-window/mm-progress-window.component.mjs +34 -0
- package/esm2022/lib/mm-shared-ui.module.mjs +83 -0
- package/esm2022/lib/{shared → models}/abstractDetailsComponent.mjs +1 -1
- package/esm2022/lib/{shared → models}/commonValidators.mjs +1 -1
- package/esm2022/lib/models/confirmation.mjs +15 -0
- package/esm2022/lib/models/progressValue.mjs +9 -0
- package/esm2022/lib/services/confirmation.service.mjs +69 -0
- package/esm2022/lib/services/progress-notifier.service.mjs +63 -0
- package/esm2022/public-api.mjs +13 -16
- package/fesm2022/meshmakers-shared-ui.mjs +267 -337
- package/fesm2022/meshmakers-shared-ui.mjs.map +1 -1
- package/lib/{breadcrumb/mat-breadcrumb → mm-breadcrumb}/mm-breadcrumb.component.d.ts +1 -2
- package/lib/{confirmation-dialog/confirmation-window → mm-confirmation-window}/mm-confirmation-window.component.d.ts +1 -1
- package/lib/{progress-notifier/progress-window → mm-progress-window}/mm-progress-window.component.d.ts +1 -1
- package/lib/mm-shared-ui.module.d.ts +25 -0
- package/lib/{confirmation-dialog/services → services}/confirmation.service.d.ts +1 -1
- package/package.json +3 -3
- package/public-api.d.ts +12 -15
- package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +0 -22
- package/esm2022/lib/breadcrumb/mat-breadcrumb/mm-breadcrumb.component.mjs +0 -109
- package/esm2022/lib/breadcrumb/model/breadcrumb.mjs +0 -2
- package/esm2022/lib/breadcrumb/services/breadcrumb.service.mjs +0 -22
- package/esm2022/lib/confirmation-dialog/confirmation-dialog.module.mjs +0 -26
- package/esm2022/lib/confirmation-dialog/confirmation-window/mm-confirmation-window.component.mjs +0 -75
- package/esm2022/lib/confirmation-dialog/services/confirmation.service.mjs +0 -69
- package/esm2022/lib/confirmation-dialog/shared/confirmation.mjs +0 -15
- package/esm2022/lib/mm-shared-ui/mm-autocomplete-input/mm-autocomplete-input.component.mjs +0 -302
- package/esm2022/lib/mm-shared-ui/mm-entity-select-input/mm-entity-select-input.component.mjs +0 -293
- package/esm2022/lib/mm-shared-ui/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component.mjs +0 -316
- package/esm2022/lib/mm-shared-ui/mm-notification-bar/mm-notification-bar.component.mjs +0 -40
- package/esm2022/lib/mm-shared-ui/mm-shared-ui.module.mjs +0 -74
- package/esm2022/lib/progress-notifier/progress-notifier.module.mjs +0 -27
- package/esm2022/lib/progress-notifier/progress-window/mm-progress-window.component.mjs +0 -35
- package/esm2022/lib/progress-notifier/services/progress-notifier.service.mjs +0 -63
- package/esm2022/lib/progress-notifier/shared/progressValue.mjs +0 -9
- package/lib/breadcrumb/breadcrumb.module.d.ts +0 -12
- package/lib/breadcrumb/model/breadcrumb.d.ts +0 -4
- package/lib/breadcrumb/services/breadcrumb.service.d.ts +0 -11
- package/lib/confirmation-dialog/confirmation-dialog.module.d.ts +0 -12
- package/lib/mm-shared-ui/mm-shared-ui.module.d.ts +0 -22
- package/lib/progress-notifier/progress-notifier.module.d.ts +0 -13
- /package/lib/{mm-shared-ui/mm-autocomplete-input → mm-autocomplete-input}/mm-autocomplete-input.component.d.ts +0 -0
- /package/lib/{mm-shared-ui/mm-entity-select-input → mm-entity-select-input}/mm-entity-select-input.component.d.ts +0 -0
- /package/lib/{mm-shared-ui/mm-message-details → mm-message-details}/mm-message-details.component.d.ts +0 -0
- /package/lib/{mm-shared-ui/mm-multiple-entity-select-input → mm-multiple-entity-select-input}/mm-multiple-entity-select-input.component.d.ts +0 -0
- /package/lib/{mm-shared-ui/mm-notification-bar → mm-notification-bar}/mm-notification-bar.component.d.ts +0 -0
- /package/lib/{shared → models}/abstractDetailsComponent.d.ts +0 -0
- /package/lib/{shared → models}/commonValidators.d.ts +0 -0
- /package/lib/{confirmation-dialog/shared → models}/confirmation.d.ts +0 -0
- /package/lib/{progress-notifier/shared → models}/progressValue.d.ts +0 -0
- /package/lib/{progress-notifier/services → services}/progress-notifier.service.d.ts +0 -0
package/esm2022/lib/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component.mjs
ADDED
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
import { Component, EventEmitter, forwardRef, HostBinding, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { FormControl, NG_VALIDATORS, NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
3
|
+
import { of, Subject } from 'rxjs';
|
|
4
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
+
import { debounceTime, filter, switchMap, tap } from 'rxjs/operators';
|
|
6
|
+
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
7
|
+
import { COMMA, ENTER } from '@angular/cdk/keycodes';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/cdk/a11y";
|
|
10
|
+
import * as i2 from "@angular/common";
|
|
11
|
+
import * as i3 from "@angular/material/autocomplete";
|
|
12
|
+
import * as i4 from "@angular/material/core";
|
|
13
|
+
import * as i5 from "@angular/material/input";
|
|
14
|
+
import * as i6 from "@angular/material/progress-spinner";
|
|
15
|
+
import * as i7 from "@angular/material/chips";
|
|
16
|
+
import * as i8 from "@angular/material/icon";
|
|
17
|
+
import * as i9 from "@angular/forms";
|
|
18
|
+
export class MmMultipleEntitySelectInputComponent {
|
|
19
|
+
elRef;
|
|
20
|
+
injector;
|
|
21
|
+
fm;
|
|
22
|
+
static nextId = 0;
|
|
23
|
+
valuesFormControl;
|
|
24
|
+
searchFormControl;
|
|
25
|
+
isLoading;
|
|
26
|
+
filteredEntities = [];
|
|
27
|
+
ngControl;
|
|
28
|
+
errorState;
|
|
29
|
+
focused;
|
|
30
|
+
stateChanges = new Subject();
|
|
31
|
+
id = `ia-multiple-entity-select-${MmMultipleEntitySelectInputComponent.nextId++}`;
|
|
32
|
+
valuesChange = new EventEmitter();
|
|
33
|
+
_selectedEntities;
|
|
34
|
+
inputField;
|
|
35
|
+
describedBy = '';
|
|
36
|
+
activatedValue;
|
|
37
|
+
separatorKeysCodes = [ENTER, COMMA];
|
|
38
|
+
constructor(elRef, injector, fm) {
|
|
39
|
+
this.elRef = elRef;
|
|
40
|
+
this.injector = injector;
|
|
41
|
+
this.fm = fm;
|
|
42
|
+
this.ngControl = null;
|
|
43
|
+
this.errorState = false;
|
|
44
|
+
this.inputField = null;
|
|
45
|
+
this._dataSource = null;
|
|
46
|
+
this._placeholder = '';
|
|
47
|
+
this._prefix = '';
|
|
48
|
+
this._selectedEntities = null;
|
|
49
|
+
this.valuesFormControl = new FormControl();
|
|
50
|
+
this.searchFormControl = new FormControl();
|
|
51
|
+
this.isLoading = false;
|
|
52
|
+
this._disabled = false;
|
|
53
|
+
this.focused = false;
|
|
54
|
+
fm.monitor(elRef.nativeElement, true).subscribe((origin) => {
|
|
55
|
+
this.focused = !!origin;
|
|
56
|
+
this.stateChanges.next();
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
_dataSource;
|
|
60
|
+
get dataSource() {
|
|
61
|
+
return this._dataSource;
|
|
62
|
+
}
|
|
63
|
+
set dataSource(value) {
|
|
64
|
+
this._dataSource = value;
|
|
65
|
+
}
|
|
66
|
+
_disabled = false;
|
|
67
|
+
get disabled() {
|
|
68
|
+
return this._disabled;
|
|
69
|
+
}
|
|
70
|
+
set disabled(dis) {
|
|
71
|
+
this._disabled = coerceBooleanProperty(dis);
|
|
72
|
+
if (this._disabled) {
|
|
73
|
+
this.searchFormControl.disable();
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
this.searchFormControl.enable();
|
|
77
|
+
}
|
|
78
|
+
this.stateChanges.next();
|
|
79
|
+
}
|
|
80
|
+
_placeholder;
|
|
81
|
+
get placeholder() {
|
|
82
|
+
return this._placeholder;
|
|
83
|
+
}
|
|
84
|
+
set placeholder(plh) {
|
|
85
|
+
this._placeholder = plh;
|
|
86
|
+
this.stateChanges.next();
|
|
87
|
+
}
|
|
88
|
+
_required = false;
|
|
89
|
+
get required() {
|
|
90
|
+
return this._required;
|
|
91
|
+
}
|
|
92
|
+
set required(req) {
|
|
93
|
+
this._required = coerceBooleanProperty(req);
|
|
94
|
+
if (this.inputField != null) {
|
|
95
|
+
this.inputField.required = this._required;
|
|
96
|
+
}
|
|
97
|
+
this.stateChanges.next();
|
|
98
|
+
}
|
|
99
|
+
_prefix;
|
|
100
|
+
get prefix() {
|
|
101
|
+
return this._prefix;
|
|
102
|
+
}
|
|
103
|
+
set prefix(value) {
|
|
104
|
+
if (value !== this._prefix) {
|
|
105
|
+
this._prefix = value;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
get value() {
|
|
109
|
+
return this._selectedEntities;
|
|
110
|
+
}
|
|
111
|
+
set value(value) {
|
|
112
|
+
if (value !== this._selectedEntities) {
|
|
113
|
+
this.valuesFormControl.setValue(value);
|
|
114
|
+
this.setValue(value);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
get empty() {
|
|
118
|
+
const n = this.valuesFormControl.value;
|
|
119
|
+
return !n;
|
|
120
|
+
}
|
|
121
|
+
get shouldLabelFloat() {
|
|
122
|
+
return this.focused || !this.empty;
|
|
123
|
+
}
|
|
124
|
+
ngOnInit() {
|
|
125
|
+
this.ngControl = this.injector.get(NgControl, null);
|
|
126
|
+
if (this.ngControl != null) {
|
|
127
|
+
this.ngControl.valueAccessor = this;
|
|
128
|
+
}
|
|
129
|
+
// If prefix defined, usually this is used for a code scanner.
|
|
130
|
+
// The goal is to select the entity in direct way.
|
|
131
|
+
if (this._prefix) {
|
|
132
|
+
this.searchFormControl.valueChanges
|
|
133
|
+
.pipe(debounceTime(300), filter((value) => typeof value === 'string'), filter((value) => value.startsWith(this._prefix)), tap(() => (this.isLoading = true)), switchMap((value) => this._dataSource?.onFilter(value.replace(this._prefix, '').trim()) ?? of(null)))
|
|
134
|
+
.subscribe((resultSet) => {
|
|
135
|
+
if (resultSet?.list) {
|
|
136
|
+
this.filteredEntities = resultSet.list;
|
|
137
|
+
}
|
|
138
|
+
this.isLoading = false;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
// This is the search functionality when search by human.
|
|
142
|
+
this.searchFormControl.valueChanges
|
|
143
|
+
.pipe(debounceTime(300), tap(() => (this.filteredEntities = [])), filter((value) => typeof value === 'string'), filter((value) => value.toString().length >= 3), tap(() => (this.isLoading = true)), switchMap((value) => this._dataSource?.onFilter(value) ?? of(null)))
|
|
144
|
+
.subscribe((resultSet) => {
|
|
145
|
+
const resultList = new Array();
|
|
146
|
+
if (resultSet?.list) {
|
|
147
|
+
resultSet.list.forEach((value1) => {
|
|
148
|
+
if (!this.value?.find((value2) => this._dataSource?.getIdEntity(value2) === this._dataSource?.getIdEntity(value1))) {
|
|
149
|
+
resultList.push(value1);
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
this.filteredEntities = resultList;
|
|
154
|
+
this.isLoading = false;
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
ngOnDestroy() {
|
|
158
|
+
this.stateChanges.complete();
|
|
159
|
+
this.fm.stopMonitoring(this.elRef.nativeElement);
|
|
160
|
+
}
|
|
161
|
+
ngDoCheck() {
|
|
162
|
+
if (this.ngControl != null) {
|
|
163
|
+
this.errorState = (this.ngControl.invalid && this.ngControl.touched) ?? false;
|
|
164
|
+
this.stateChanges.next();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
clear() {
|
|
168
|
+
this.filteredEntities = [];
|
|
169
|
+
this.searchFormControl.reset(null);
|
|
170
|
+
}
|
|
171
|
+
focus() {
|
|
172
|
+
this.elRef.nativeElement.querySelector('input')?.focus();
|
|
173
|
+
}
|
|
174
|
+
onEntitySelected(event) {
|
|
175
|
+
let list = this.value;
|
|
176
|
+
if (list == null) {
|
|
177
|
+
list = new Array();
|
|
178
|
+
}
|
|
179
|
+
list.push(event.option.value);
|
|
180
|
+
this.value = list;
|
|
181
|
+
this.filteredEntities = [];
|
|
182
|
+
this.searchFormControl.setValue(null);
|
|
183
|
+
this.valuesFormControl.updateValueAndValidity();
|
|
184
|
+
}
|
|
185
|
+
onEntityActivated(event) {
|
|
186
|
+
this.activatedValue = event.option?.value;
|
|
187
|
+
}
|
|
188
|
+
onEntityClosed() {
|
|
189
|
+
if (this.activatedValue) {
|
|
190
|
+
this.value = this.activatedValue;
|
|
191
|
+
this.activatedValue = null;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
reset() {
|
|
195
|
+
this.value = new Array();
|
|
196
|
+
}
|
|
197
|
+
onFocusOut() {
|
|
198
|
+
// if (this.filteredEntities.length === 1) {
|
|
199
|
+
// this.activatedValue = this.filteredEntities[0];
|
|
200
|
+
// this.value = this.filteredEntities[0];
|
|
201
|
+
// }
|
|
202
|
+
}
|
|
203
|
+
onTouched() {
|
|
204
|
+
this._onTouched();
|
|
205
|
+
this.stateChanges.next();
|
|
206
|
+
}
|
|
207
|
+
registerOnChange(fn) {
|
|
208
|
+
this._propagateChange = fn;
|
|
209
|
+
}
|
|
210
|
+
registerOnTouched(fn) {
|
|
211
|
+
this.onTouched = fn;
|
|
212
|
+
}
|
|
213
|
+
writeValue(obj) {
|
|
214
|
+
this.clear();
|
|
215
|
+
this.value = obj;
|
|
216
|
+
}
|
|
217
|
+
setDisabledState(isDisabled) {
|
|
218
|
+
this.disabled = isDisabled;
|
|
219
|
+
}
|
|
220
|
+
onContainerClick(event) {
|
|
221
|
+
if (event.target.tagName.toLowerCase() !== 'input') {
|
|
222
|
+
this.focus();
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
setDescribedByIds(ids) {
|
|
226
|
+
this.describedBy = ids.join(' ');
|
|
227
|
+
}
|
|
228
|
+
validate(control) {
|
|
229
|
+
const selection = control.value;
|
|
230
|
+
if (typeof selection === 'string') {
|
|
231
|
+
return { incorrect: true };
|
|
232
|
+
}
|
|
233
|
+
return null;
|
|
234
|
+
}
|
|
235
|
+
remove(value) {
|
|
236
|
+
const list = this.value;
|
|
237
|
+
if (list != null) {
|
|
238
|
+
const index = list.indexOf(value);
|
|
239
|
+
if (index !== -1) {
|
|
240
|
+
list.splice(index, 1);
|
|
241
|
+
}
|
|
242
|
+
this.valuesFormControl.updateValueAndValidity();
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
_propagateChange = (_) => { };
|
|
246
|
+
_onTouched = () => { };
|
|
247
|
+
setValue(values) {
|
|
248
|
+
if (values !== this._selectedEntities) {
|
|
249
|
+
this._selectedEntities = values;
|
|
250
|
+
this.valuesChange.emit(values ?? []);
|
|
251
|
+
this._propagateChange(this._selectedEntities ?? []);
|
|
252
|
+
this.stateChanges.next();
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmMultipleEntitySelectInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.Injector }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component });
|
|
256
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: MmMultipleEntitySelectInputComponent, selector: "mm-multiple-entity-select", inputs: { dataSource: "dataSource", disabled: "disabled", placeholder: "placeholder", required: "required", prefix: "prefix" }, host: { properties: { "id": "this.id", "attr.aria-describedby": "this.describedBy", "class.floating": "this.shouldLabelFloat" } }, providers: [
|
|
257
|
+
{
|
|
258
|
+
provide: NG_VALUE_ACCESSOR,
|
|
259
|
+
useExisting: forwardRef(() => MmMultipleEntitySelectInputComponent),
|
|
260
|
+
multi: true
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
provide: MatFormFieldControl,
|
|
264
|
+
useExisting: MmMultipleEntitySelectInputComponent
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
provide: NG_VALIDATORS,
|
|
268
|
+
useExisting: forwardRef(() => MmMultipleEntitySelectInputComponent),
|
|
269
|
+
multi: true
|
|
270
|
+
}
|
|
271
|
+
], viewQueries: [{ propertyName: "inputField", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<mat-chip-grid #list>\n <mat-chip-row *ngFor=\"let entity of valuesFormControl.value\"\n (removed)=\"remove(entity)\"\n [editable]=\"false\"\n [aria-description]=\"'press enter to edit ' + dataSource?.onDisplayEntity(entity) ?? null\">\n {{dataSource?.onDisplayEntity(entity) ?? null}}\n <button matChipRemove [attr.aria-label]=\"'remove ' + dataSource?.onDisplayEntity(entity) ?? null\">\n <mat-icon>cancel</mat-icon>\n </button>\n </mat-chip-row>\n <input #input (blur)=\"onTouched()\" (focusout)=\"onFocusOut()\" [formControl]=\"searchFormControl\"\n [matAutocomplete]=\"auto\"\n [matChipInputFor]=\"list\"\n matChipInputAddOnBlur=\"true\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\n [placeholder]=\"placeholder\" matInput>\n <mat-autocomplete #auto=\"matAutocomplete\" (closed)=\"onEntityClosed()\"\n (optionActivated)=\"onEntityActivated($event)\" (optionSelected)=\"onEntitySelected($event)\"\n [displayWith]=\"dataSource?.onDisplayEntity ?? null\">\n <mat-option *ngIf=\"isLoading\" class=\"is-loading\">\n <mat-spinner diameter=\"50\"></mat-spinner>\n </mat-option>\n <ng-container *ngIf=\"!isLoading\">\n <mat-option *ngFor=\"let entity of filteredEntities\" [value]=\"entity\">\n {{dataSource?.onDisplayEntity(entity) ?? null}}\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n</mat-chip-grid>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.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: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i5.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: i6.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i7.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i7.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9.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: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
272
|
+
}
|
|
273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmMultipleEntitySelectInputComponent, decorators: [{
|
|
274
|
+
type: Component,
|
|
275
|
+
args: [{ selector: 'mm-multiple-entity-select', host: {
|
|
276
|
+
'[id]': 'id',
|
|
277
|
+
'[attr.aria-describedby]': 'describedBy'
|
|
278
|
+
}, providers: [
|
|
279
|
+
{
|
|
280
|
+
provide: NG_VALUE_ACCESSOR,
|
|
281
|
+
useExisting: forwardRef(() => MmMultipleEntitySelectInputComponent),
|
|
282
|
+
multi: true
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
provide: MatFormFieldControl,
|
|
286
|
+
useExisting: MmMultipleEntitySelectInputComponent
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
provide: NG_VALIDATORS,
|
|
290
|
+
useExisting: forwardRef(() => MmMultipleEntitySelectInputComponent),
|
|
291
|
+
multi: true
|
|
292
|
+
}
|
|
293
|
+
], template: "<mat-chip-grid #list>\n <mat-chip-row *ngFor=\"let entity of valuesFormControl.value\"\n (removed)=\"remove(entity)\"\n [editable]=\"false\"\n [aria-description]=\"'press enter to edit ' + dataSource?.onDisplayEntity(entity) ?? null\">\n {{dataSource?.onDisplayEntity(entity) ?? null}}\n <button matChipRemove [attr.aria-label]=\"'remove ' + dataSource?.onDisplayEntity(entity) ?? null\">\n <mat-icon>cancel</mat-icon>\n </button>\n </mat-chip-row>\n <input #input (blur)=\"onTouched()\" (focusout)=\"onFocusOut()\" [formControl]=\"searchFormControl\"\n [matAutocomplete]=\"auto\"\n [matChipInputFor]=\"list\"\n matChipInputAddOnBlur=\"true\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\"\n [placeholder]=\"placeholder\" matInput>\n <mat-autocomplete #auto=\"matAutocomplete\" (closed)=\"onEntityClosed()\"\n (optionActivated)=\"onEntityActivated($event)\" (optionSelected)=\"onEntitySelected($event)\"\n [displayWith]=\"dataSource?.onDisplayEntity ?? null\">\n <mat-option *ngIf=\"isLoading\" class=\"is-loading\">\n <mat-spinner diameter=\"50\"></mat-spinner>\n </mat-option>\n <ng-container *ngIf=\"!isLoading\">\n <mat-option *ngFor=\"let entity of filteredEntities\" [value]=\"entity\">\n {{dataSource?.onDisplayEntity(entity) ?? null}}\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n</mat-chip-grid>\n" }]
|
|
294
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Injector }, { type: i1.FocusMonitor }], propDecorators: { id: [{
|
|
295
|
+
type: HostBinding
|
|
296
|
+
}], inputField: [{
|
|
297
|
+
type: ViewChild,
|
|
298
|
+
args: ['input']
|
|
299
|
+
}], describedBy: [{
|
|
300
|
+
type: HostBinding,
|
|
301
|
+
args: ['attr.aria-describedby']
|
|
302
|
+
}], dataSource: [{
|
|
303
|
+
type: Input
|
|
304
|
+
}], disabled: [{
|
|
305
|
+
type: Input
|
|
306
|
+
}], placeholder: [{
|
|
307
|
+
type: Input
|
|
308
|
+
}], required: [{
|
|
309
|
+
type: Input
|
|
310
|
+
}], prefix: [{
|
|
311
|
+
type: Input
|
|
312
|
+
}], shouldLabelFloat: [{
|
|
313
|
+
type: HostBinding,
|
|
314
|
+
args: ['class.floating']
|
|
315
|
+
}] } });
|
|
316
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW0tbXVsdGlwbGUtZW50aXR5LXNlbGVjdC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL21tLW11bHRpcGxlLWVudGl0eS1zZWxlY3QtaW5wdXQvbW0tbXVsdGlwbGUtZW50aXR5LXNlbGVjdC1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL21tLW11bHRpcGxlLWVudGl0eS1zZWxlY3QtaW5wdXQvbW0tbXVsdGlwbGUtZW50aXR5LXNlbGVjdC1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUdULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUVYLEtBQUssRUFHTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUdMLFdBQVcsRUFDWCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLFNBQVMsRUFHVixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR25DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7OztBQTJCckQsTUFBTSxPQUFPLG9DQUFvQztJQXVCdEM7SUFDVTtJQUNBO0lBdEJYLE1BQU0sQ0FBQyxNQUFNLEdBQUcs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QWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQ0FBcUMsQ0FBQzs0QkFDbkUsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsV0FBVyxzQ0FBc0M7eUJBQ2xEO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQ0FBcUMsQ0FBQzs0QkFDbkUsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUlBZWUsRUFBRTtzQkFEakIsV0FBVztnQkFLeUIsVUFBVTtzQkFBOUMsU0FBUzt1QkFBQyxPQUFPO2dCQUM0QixXQUFXO3NCQUF4RCxXQUFXO3VCQUFDLHVCQUF1QjtnQkFtQ3pCLFVBQVU7c0JBRHBCLEtBQUs7Z0JBUUssUUFBUTtzQkFEbEIsS0FBSztnQkFrQkssV0FBVztzQkFEckIsS0FBSztnQkFhSyxRQUFRO3NCQURsQixLQUFLO2dCQWdCSyxNQUFNO3NCQURoQixLQUFLO2dCQTRCSyxnQkFBZ0I7c0JBRDFCLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBEb0NoZWNrLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFbnRpdHlTZWxlY3REYXRhU291cmNlIH0gZnJvbSAnQG1lc2htYWtlcnMvc2hhcmVkLXNlcnZpY2VzJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIEZvcm1Db250cm9sLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgTmdDb250cm9sLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3Jcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZUFjdGl2YXRlZEV2ZW50LCBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IENPTU1BLCBFTlRFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21tLW11bHRpcGxlLWVudGl0eS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vbW0tbXVsdGlwbGUtZW50aXR5LXNlbGVjdC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21tLW11bHRpcGxlLWVudGl0eS1zZWxlY3QtaW5wdXQuY29tcG9uZW50LmNzcyddLFxuICBob3N0OiB7XG4gICAgJ1tpZF0nOiAnaWQnLFxuICAgICdbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XSc6ICdkZXNjcmliZWRCeSdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNbU11bHRpcGxlRW50aXR5U2VsZWN0SW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsXG4gICAgICB1c2VFeGlzdGluZzogTW1NdWx0aXBsZUVudGl0eVNlbGVjdElucHV0Q29tcG9uZW50XG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTW1NdWx0aXBsZUVudGl0eVNlbGVjdElucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1tTXVsdGlwbGVFbnRpdHlTZWxlY3RJbnB1dENvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBEb0NoZWNrLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgTWF0Rm9ybUZpZWxkQ29udHJvbDxhbnlbXT4sIFZhbGlkYXRvclxue1xuICBwcml2YXRlIHN0YXRpYyBuZXh0SWQgPSAwO1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWVzRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuICBwdWJsaWMgcmVhZG9ubHkgc2VhcmNoRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuICBwdWJsaWMgaXNMb2FkaW5nOiBib29sZWFuO1xuICBwdWJsaWMgZmlsdGVyZWRFbnRpdGllczogYW55W10gPSBbXTtcbiAgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sIHwgbnVsbDtcbiAgcHVibGljIGVycm9yU3RhdGU6IGJvb2xlYW47XG4gIHB1YmxpYyBmb2N1c2VkOiBib29sZWFuO1xuICBwdWJsaWMgcmVhZG9ubHkgc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgQEhvc3RCaW5kaW5nKClcbiAgcHVibGljIHJlYWRvbmx5IGlkID0gYGlhLW11bHRpcGxlLWVudGl0eS1zZWxlY3QtJHtNbU11bHRpcGxlRW50aXR5U2VsZWN0SW5wdXRDb21wb25lbnQubmV4dElkKyt9YDtcblxuICBwdWJsaWMgdmFsdWVzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgcHJpdmF0ZSBfc2VsZWN0ZWRFbnRpdGllczogYW55W10gfCBudWxsO1xuICBAVmlld0NoaWxkKCdpbnB1dCcpIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRGaWVsZDogTWF0SW5wdXQgfCBudWxsO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1kZXNjcmliZWRieScpIHByaXZhdGUgZGVzY3JpYmVkQnkgPSAnJztcbiAgcHJpdmF0ZSBhY3RpdmF0ZWRWYWx1ZTogYW55O1xuICByZWFkb25seSBzZXBhcmF0b3JLZXlzQ29kZXMgPSBbRU5URVIsIENPTU1BXSBhcyBjb25zdDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm06IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICB0aGlzLm5nQ29udHJvbCA9IG51bGw7XG4gICAgdGhpcy5lcnJvclN0YXRlID0gZmFsc2U7XG4gICAgdGhpcy5pbnB1dEZpZWxkID0gbnVsbDtcbiAgICB0aGlzLl9kYXRhU291cmNlID0gbnVsbDtcbiAgICB0aGlzLl9wbGFjZWhvbGRlciA9ICcnO1xuICAgIHRoaXMuX3ByZWZpeCA9ICcnO1xuICAgIHRoaXMuX3NlbGVjdGVkRW50aXRpZXMgPSBudWxsO1xuXG4gICAgdGhpcy52YWx1ZXNGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpO1xuICAgIHRoaXMuc2VhcmNoRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMuX2Rpc2FibGVkID0gZmFsc2U7XG4gICAgdGhpcy5mb2N1c2VkID0gZmFsc2U7XG4gICAgZm0ubW9uaXRvcihlbFJlZi5uYXRpdmVFbGVtZW50LCB0cnVlKS5zdWJzY3JpYmUoKG9yaWdpbikgPT4ge1xuICAgICAgdGhpcy5mb2N1c2VkID0gISFvcmlnaW47XG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9kYXRhU291cmNlOiBFbnRpdHlTZWxlY3REYXRhU291cmNlPGFueT4gfCBudWxsO1xuXG4gIHB1YmxpYyBnZXQgZGF0YVNvdXJjZSgpOiBFbnRpdHlTZWxlY3REYXRhU291cmNlPGFueT4gfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVNvdXJjZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YVNvdXJjZSh2YWx1ZTogRW50aXR5U2VsZWN0RGF0YVNvdXJjZTxhbnk+IHwgbnVsbCkge1xuICAgIHRoaXMuX2RhdGFTb3VyY2UgPSB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRpc2FibGVkKGRpcykge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KGRpcyk7XG4gICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICB0aGlzLnNlYXJjaEZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWFyY2hGb3JtQ29udHJvbC5lbmFibGUoKTtcbiAgICB9XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xuICB9XG5cbiAgcHVibGljIHNldCBwbGFjZWhvbGRlcihwbGgpIHtcbiAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHBsaDtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkO1xuICB9XG5cbiAgcHVibGljIHNldCByZXF1aXJlZChyZXEpIHtcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShyZXEpO1xuICAgIGlmICh0aGlzLmlucHV0RmllbGQgIT0gbnVsbCkge1xuICAgICAgdGhpcy5pbnB1dEZpZWxkLnJlcXVpcmVkID0gdGhpcy5fcmVxdWlyZWQ7XG4gICAgfVxuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3ByZWZpeDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgcHJlZml4KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ByZWZpeDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgcHJlZml4KHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuX3ByZWZpeCkge1xuICAgICAgdGhpcy5fcHJlZml4ID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBhbnlbXSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEVudGl0aWVzO1xuICB9XG5cbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogYW55W10gfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLl9zZWxlY3RlZEVudGl0aWVzKSB7XG4gICAgICB0aGlzLnZhbHVlc0Zvcm1Db250cm9sLnNldFZhbHVlKHZhbHVlKTtcbiAgICAgIHRoaXMuc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbiA9IHRoaXMudmFsdWVzRm9ybUNvbnRyb2wudmFsdWU7XG4gICAgcmV0dXJuICFuO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mbG9hdGluZycpXG4gIHB1YmxpYyBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mb2N1c2VkIHx8ICF0aGlzLmVtcHR5O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5uZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwpO1xuICAgIGlmICh0aGlzLm5nQ29udHJvbCAhPSBudWxsKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG5cbiAgICAvLyBJZiBwcmVmaXggZGVmaW5lZCwgdXN1YWxseSB0aGlzIGlzIHVzZWQgZm9yIGEgY29kZSBzY2FubmVyLlxuICAgIC8vIFRoZSBnb2FsIGlzIHRvIHNlbGVjdCB0aGUgZW50aXR5IGluIGRpcmVjdCB3YXkuXG4gICAgaWYgKHRoaXMuX3ByZWZpeCkge1xuICAgICAgdGhpcy5zZWFyY2hGb3JtQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyksXG4gICAgICAgICAgZmlsdGVyKCh2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZS5zdGFydHNXaXRoKHRoaXMuX3ByZWZpeCkpLFxuICAgICAgICAgIHRhcCgoKSA9PiAodGhpcy5pc0xvYWRpbmcgPSB0cnVlKSksXG4gICAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gdGhpcy5fZGF0YVNvdXJjZT8ub25GaWx0ZXIodmFsdWUucmVwbGFjZSh0aGlzLl9wcmVmaXgsICcnKS50cmltKCkpID8/IG9mKG51bGwpKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdFNldCkgPT4ge1xuICAgICAgICAgIGlmIChyZXN1bHRTZXQ/Lmxpc3QpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWRFbnRpdGllcyA9IHJlc3VsdFNldC5saXN0O1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBUaGlzIGlzIHRoZSBzZWFyY2ggZnVuY3Rpb25hbGl0eSB3aGVuIHNlYXJjaCBieSBodW1hbi5cbiAgICB0aGlzLnNlYXJjaEZvcm1Db250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgICB0YXAoKCkgPT4gKHRoaXMuZmlsdGVyZWRFbnRpdGllcyA9IFtdKSksXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpLFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZS50b1N0cmluZygpLmxlbmd0aCA+PSAzKSxcbiAgICAgICAgdGFwKCgpID0+ICh0aGlzLmlzTG9hZGluZyA9IHRydWUpKSxcbiAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZTogc3RyaW5nKSA9PiB0aGlzLl9kYXRhU291cmNlPy5vbkZpbHRlcih2YWx1ZSkgPz8gb2YobnVsbCkpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHRTZXQpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0TGlzdCA9IG5ldyBBcnJheTxhbnk+KCk7XG5cbiAgICAgICAgaWYgKHJlc3VsdFNldD8ubGlzdCkge1xuICAgICAgICAgIHJlc3VsdFNldC5saXN0LmZvckVhY2goKHZhbHVlMSkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnZhbHVlPy5maW5kKCh2YWx1ZTIpID0+IHRoaXMuX2RhdGFTb3VyY2U/LmdldElkRW50aXR5KHZhbHVlMikgPT09IHRoaXMuX2RhdGFTb3VyY2U/LmdldElkRW50aXR5KHZhbHVlMSkpKSB7XG4gICAgICAgICAgICAgIHJlc3VsdExpc3QucHVzaCh2YWx1ZTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5maWx0ZXJlZEVudGl0aWVzID0gcmVzdWx0TGlzdDtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMuY29tcGxldGUoKTtcbiAgICB0aGlzLmZtLnN0b3BNb25pdG9yaW5nKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9IG51bGwpIHtcbiAgICAgIHRoaXMuZXJyb3JTdGF0ZSA9ICh0aGlzLm5nQ29udHJvbC5pbnZhbGlkICYmIHRoaXMubmdDb250cm9sLnRvdWNoZWQpID8/IGZhbHNlO1xuICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcmVkRW50aXRpZXMgPSBbXTtcbiAgICB0aGlzLnNlYXJjaEZvcm1Db250cm9sLnJlc2V0KG51bGwpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpPy5mb2N1cygpO1xuICB9XG5cbiAgcHVibGljIG9uRW50aXR5U2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcbiAgICBsZXQgbGlzdCA9IHRoaXMudmFsdWU7XG4gICAgaWYgKGxpc3QgPT0gbnVsbCkge1xuICAgICAgbGlzdCA9IG5ldyBBcnJheTxhbnk+KCk7XG4gICAgfVxuICAgIGxpc3QucHVzaChldmVudC5vcHRpb24udmFsdWUpO1xuICAgIHRoaXMudmFsdWUgPSBsaXN0O1xuXG4gICAgdGhpcy5maWx0ZXJlZEVudGl0aWVzID0gW107XG4gICAgdGhpcy5zZWFyY2hGb3JtQ29udHJvbC5zZXRWYWx1ZShudWxsKTtcbiAgICB0aGlzLnZhbHVlc0Zvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVudGl0eUFjdGl2YXRlZChldmVudDogTWF0QXV0b2NvbXBsZXRlQWN0aXZhdGVkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2YXRlZFZhbHVlID0gZXZlbnQub3B0aW9uPy52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVudGl0eUNsb3NlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hY3RpdmF0ZWRWYWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuYWN0aXZhdGVkVmFsdWU7XG4gICAgICB0aGlzLmFjdGl2YXRlZFZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IG5ldyBBcnJheTxhbnk+KCk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1c091dCgpOiB2b2lkIHtcbiAgICAvLyBpZiAodGhpcy5maWx0ZXJlZEVudGl0aWVzLmxlbmd0aCA9PT0gMSkge1xuICAgIC8vICAgdGhpcy5hY3RpdmF0ZWRWYWx1ZSA9IHRoaXMuZmlsdGVyZWRFbnRpdGllc1swXTtcbiAgICAvLyAgIHRoaXMudmFsdWUgPSB0aGlzLmZpbHRlcmVkRW50aXRpZXNbMF07XG4gICAgLy8gfVxuICB9XG5cbiAgcHVibGljIG9uVG91Y2hlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fcHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXIoKTtcbiAgICB0aGlzLnZhbHVlID0gb2JqO1xuICB9XG5cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIG9uQ29udGFpbmVyQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoKGV2ZW50LnRhcmdldCBhcyBFbGVtZW50KS50YWdOYW1lLnRvTG93ZXJDYXNlKCkgIT09ICdpbnB1dCcpIHtcbiAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0RGVzY3JpYmVkQnlJZHMoaWRzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuZGVzY3JpYmVkQnkgPSBpZHMuam9pbignICcpO1xuICB9XG5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IHNlbGVjdGlvbjogYW55ID0gY29udHJvbC52YWx1ZTtcbiAgICBpZiAodHlwZW9mIHNlbGVjdGlvbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB7IGluY29ycmVjdDogdHJ1ZSB9O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJlbW92ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgY29uc3QgbGlzdCA9IHRoaXMudmFsdWU7XG4gICAgaWYgKGxpc3QgIT0gbnVsbCkge1xuICAgICAgY29uc3QgaW5kZXggPSBsaXN0LmluZGV4T2YodmFsdWUpO1xuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICBsaXN0LnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgICB0aGlzLnZhbHVlc0Zvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9wcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55W10pOiB2b2lkID0+IHt9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX29uVG91Y2hlZCA9ICgpOiB2b2lkID0+IHt9O1xuXG4gIHByaXZhdGUgc2V0VmFsdWUodmFsdWVzOiBhbnlbXSB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAodmFsdWVzICE9PSB0aGlzLl9zZWxlY3RlZEVudGl0aWVzKSB7XG4gICAgICB0aGlzLl9zZWxlY3RlZEVudGl0aWVzID0gdmFsdWVzO1xuICAgICAgdGhpcy52YWx1ZXNDaGFuZ2UuZW1pdCh2YWx1ZXMgPz8gW10pO1xuICAgICAgdGhpcy5fcHJvcGFnYXRlQ2hhbmdlKHRoaXMuX3NlbGVjdGVkRW50aXRpZXMgPz8gW10pO1xuICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxufVxuIiwiPG1hdC1jaGlwLWdyaWQgI2xpc3Q+XG4gIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IGVudGl0eSBvZiB2YWx1ZXNGb3JtQ29udHJvbC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlKGVudGl0eSlcIlxuICAgICAgICAgICAgICAgIFtlZGl0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW2FyaWEtZGVzY3JpcHRpb25dPVwiJ3ByZXNzIGVudGVyIHRvIGVkaXQgJyArIGRhdGFTb3VyY2U/Lm9uRGlzcGxheUVudGl0eShlbnRpdHkpID8/IG51bGxcIj5cbiAgICB7e2RhdGFTb3VyY2U/Lm9uRGlzcGxheUVudGl0eShlbnRpdHkpID8/IG51bGx9fVxuICAgIDxidXR0b24gbWF0Q2hpcFJlbW92ZSBbYXR0ci5hcmlhLWxhYmVsXT1cIidyZW1vdmUgJyArIGRhdGFTb3VyY2U/Lm9uRGlzcGxheUVudGl0eShlbnRpdHkpID8/IG51bGxcIj5cbiAgICAgIDxtYXQtaWNvbj5jYW5jZWw8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L21hdC1jaGlwLXJvdz5cbiAgPGlucHV0ICNpbnB1dCAoYmx1cik9XCJvblRvdWNoZWQoKVwiIChmb2N1c291dCk9XCJvbkZvY3VzT3V0KClcIiBbZm9ybUNvbnRyb2xdPVwic2VhcmNoRm9ybUNvbnRyb2xcIlxuICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcbiAgICAgICAgIFttYXRDaGlwSW5wdXRGb3JdPVwibGlzdFwiXG4gICAgICAgICBtYXRDaGlwSW5wdXRBZGRPbkJsdXI9XCJ0cnVlXCJcbiAgICAgICAgIFttYXRDaGlwSW5wdXRTZXBhcmF0b3JLZXlDb2Rlc109XCJzZXBhcmF0b3JLZXlzQ29kZXNcIlxuICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgbWF0SW5wdXQ+XG4gIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKGNsb3NlZCk9XCJvbkVudGl0eUNsb3NlZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgKG9wdGlvbkFjdGl2YXRlZCk9XCJvbkVudGl0eUFjdGl2YXRlZCgkZXZlbnQpXCIgKG9wdGlvblNlbGVjdGVkKT1cIm9uRW50aXR5U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5V2l0aF09XCJkYXRhU291cmNlPy5vbkRpc3BsYXlFbnRpdHkgPz8gbnVsbFwiPlxuICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJpcy1sb2FkaW5nXCI+XG4gICAgICA8bWF0LXNwaW5uZXIgZGlhbWV0ZXI9XCI1MFwiPjwvbWF0LXNwaW5uZXI+XG4gICAgPC9tYXQtb3B0aW9uPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZW50aXR5IG9mIGZpbHRlcmVkRW50aXRpZXNcIiBbdmFsdWVdPVwiZW50aXR5XCI+XG4gICAgICAgIHt7ZGF0YVNvdXJjZT8ub25EaXNwbGF5RW50aXR5KGVudGl0eSkgPz8gbnVsbH19XG4gICAgICA8L21hdC1vcHRpb24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cbjwvbWF0LWNoaXAtZ3JpZD5cbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { MmMessageDetailsComponent } from '../mm-message-details/mm-message-details.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@meshmakers/shared-services";
|
|
5
|
+
import * as i2 from "@angular/material/dialog";
|
|
6
|
+
import * as i3 from "@angular/material/toolbar";
|
|
7
|
+
import * as i4 from "@angular/material/button";
|
|
8
|
+
import * as i5 from "@angular/material/icon";
|
|
9
|
+
export class MmNotificationBarComponent {
|
|
10
|
+
messageService;
|
|
11
|
+
dialog;
|
|
12
|
+
errorMessage;
|
|
13
|
+
constructor(messageService, dialog) {
|
|
14
|
+
this.messageService = messageService;
|
|
15
|
+
this.dialog = dialog;
|
|
16
|
+
this.errorMessage = null;
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.messageService.getLatestErrorMessage().subscribe((value) => {
|
|
20
|
+
this.errorMessage = value;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
onHide() {
|
|
24
|
+
this.errorMessage = null;
|
|
25
|
+
}
|
|
26
|
+
onShowDetails() {
|
|
27
|
+
this.dialog.open(MmMessageDetailsComponent, {
|
|
28
|
+
data: {
|
|
29
|
+
errorMessage: this.errorMessage
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmNotificationBarComponent, deps: [{ token: i1.MessageService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: MmNotificationBarComponent, selector: "mm-notification-bar", ngImport: i0, template: "<mat-toolbar [hidden]=\"!errorMessage\" class=\"mm-notification-bar-background\">\n <a (click)=\"onShowDetails()\"><span class=\"mat-small\"><u>{{ errorMessage?.title }}</u></span></a>\n\n <!-- This fills the remaining space of the current row -->\n <span class=\"notification-fill-remaining-space\"></span>\n\n <button (click)=\"onHide()\" class=\"mm-notification-bar-button\" mat-fab><mat-icon>close</mat-icon></button>\n</mat-toolbar>\n", styles: [".notification-fill-remaining-space{flex:1 1 auto}\n"], dependencies: [{ kind: "component", type: i3.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i4.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmNotificationBarComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'mm-notification-bar', template: "<mat-toolbar [hidden]=\"!errorMessage\" class=\"mm-notification-bar-background\">\n <a (click)=\"onShowDetails()\"><span class=\"mat-small\"><u>{{ errorMessage?.title }}</u></span></a>\n\n <!-- This fills the remaining space of the current row -->\n <span class=\"notification-fill-remaining-space\"></span>\n\n <button (click)=\"onHide()\" class=\"mm-notification-bar-button\" mat-fab><mat-icon>close</mat-icon></button>\n</mat-toolbar>\n", styles: [".notification-fill-remaining-space{flex:1 1 auto}\n"] }]
|
|
39
|
+
}], ctorParameters: () => [{ type: i1.MessageService }, { type: i2.MatDialog }] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW0tbm90aWZpY2F0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL21tLW5vdGlmaWNhdGlvbi1iYXIvbW0tbm90aWZpY2F0aW9uLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL21tLW5vdGlmaWNhdGlvbi1iYXIvbW0tbm90aWZpY2F0aW9uLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR2xELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7Ozs7O0FBTy9GLE1BQU0sT0FBTywwQkFBMEI7SUFJbEI7SUFDQTtJQUpaLFlBQVksQ0FBc0I7SUFFekMsWUFDbUIsY0FBOEIsRUFDOUIsTUFBaUI7UUFEakIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFFbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDOUQsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDMUMsSUFBSSxFQUFFO2dCQUNKLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTthQUNoQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBMUJVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLDJEQ1Z2Qyw2YkFRQTs7MkZERWEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQG1lc2htYWtlcnMvc2hhcmVkLXNlcnZpY2VzJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNbU1lc3NhZ2VEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi4vbW0tbWVzc2FnZS1kZXRhaWxzL21tLW1lc3NhZ2UtZGV0YWlscy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbS1ub3RpZmljYXRpb24tYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21tLW5vdGlmaWNhdGlvbi1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tbS1ub3RpZmljYXRpb24tYmFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTW1Ob3RpZmljYXRpb25CYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgZXJyb3JNZXNzYWdlOiBFcnJvck1lc3NhZ2UgfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2dcbiAgKSB7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5nZXRMYXRlc3RFcnJvck1lc3NhZ2UoKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHZhbHVlO1xuICAgIH0pO1xuICB9XG5cbiAgb25IaWRlKCk6IHZvaWQge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgfVxuXG4gIG9uU2hvd0RldGFpbHMoKTogdm9pZCB7XG4gICAgdGhpcy5kaWFsb2cub3BlbihNbU1lc3NhZ2VEZXRhaWxzQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiB7XG4gICAgICAgIGVycm9yTWVzc2FnZTogdGhpcy5lcnJvck1lc3NhZ2VcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwiPG1hdC10b29sYmFyIFtoaWRkZW5dPVwiIWVycm9yTWVzc2FnZVwiIGNsYXNzPVwibW0tbm90aWZpY2F0aW9uLWJhci1iYWNrZ3JvdW5kXCI+XG4gIDxhIChjbGljayk9XCJvblNob3dEZXRhaWxzKClcIj48c3BhbiBjbGFzcz1cIm1hdC1zbWFsbFwiPjx1Pnt7IGVycm9yTWVzc2FnZT8udGl0bGUgfX08L3U+PC9zcGFuPjwvYT5cblxuICA8IS0tIFRoaXMgZmlsbHMgdGhlIHJlbWFpbmluZyBzcGFjZSBvZiB0aGUgY3VycmVudCByb3cgLS0+XG4gIDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLWZpbGwtcmVtYWluaW5nLXNwYWNlXCI+PC9zcGFuPlxuXG4gIDxidXR0b24gKGNsaWNrKT1cIm9uSGlkZSgpXCIgY2xhc3M9XCJtbS1ub3RpZmljYXRpb24tYmFyLWJ1dHRvblwiIG1hdC1mYWI+PG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj48L2J1dHRvbj5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/material/button";
|
|
6
|
+
import * as i3 from "@angular/material/dialog";
|
|
7
|
+
export class MmProgressWindowComponent {
|
|
8
|
+
data;
|
|
9
|
+
statusText;
|
|
10
|
+
progressValue;
|
|
11
|
+
constructor(data) {
|
|
12
|
+
this.data = data;
|
|
13
|
+
this.statusText = null;
|
|
14
|
+
this.progressValue = 0;
|
|
15
|
+
data.progress.subscribe((value) => {
|
|
16
|
+
this.statusText = value.statusText;
|
|
17
|
+
this.progressValue = value.progressValue;
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
ngOnInit() { }
|
|
21
|
+
onCancelClick() {
|
|
22
|
+
this.data.cancelOperation();
|
|
23
|
+
}
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmProgressWindowComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: MmProgressWindowComponent, selector: "mm-progress-window", ngImport: i0, template: "<h1 mat-dialog-title>{{data.title}}</h1>\n<div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-progress-bar *ngIf=\"data.isDeterminate\" [value]=\"progressValue\" mode=\"determinate\"></mat-progress-bar>\n <mat-progress-bar *ngIf=\"!data.isDeterminate\" mode=\"indeterminate\"></mat-progress-bar>\n <p>{{statusText}}</p>\n </div>\n</div>\n<div style=\"justify-content: flex-end;\" mat-dialog-actions>\n <button (click)=\"onCancelClick()\" *ngIf=\"data.isCancelOperationAvailable\" mat-button>Cancel</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] });
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmProgressWindowComponent, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{ selector: 'mm-progress-window', template: "<h1 mat-dialog-title>{{data.title}}</h1>\n<div mat-dialog-content>\n <div fxLayout=\"column\">\n <mat-progress-bar *ngIf=\"data.isDeterminate\" [value]=\"progressValue\" mode=\"determinate\"></mat-progress-bar>\n <mat-progress-bar *ngIf=\"!data.isDeterminate\" mode=\"indeterminate\"></mat-progress-bar>\n <p>{{statusText}}</p>\n </div>\n</div>\n<div style=\"justify-content: flex-end;\" mat-dialog-actions>\n <button (click)=\"onCancelClick()\" *ngIf=\"data.isCancelOperationAvailable\" mat-button>Cancel</button>\n</div>\n" }]
|
|
30
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
31
|
+
type: Inject,
|
|
32
|
+
args: [MAT_DIALOG_DATA]
|
|
33
|
+
}] }] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW0tcHJvZ3Jlc3Mtd2luZG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvc2hhcmVkLXVpL3NyYy9saWIvbW0tcHJvZ3Jlc3Mtd2luZG93L21tLXByb2dyZXNzLXdpbmRvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL21tLXByb2dyZXNzLXdpbmRvdy9tbS1wcm9ncmVzcy13aW5kb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQW1CM0QsTUFBTSxPQUFPLHlCQUF5QjtJQUlRO0lBSHJDLFVBQVUsQ0FBZ0I7SUFDMUIsYUFBYSxDQUFTO0lBRTdCLFlBQTRDLElBQXdCO1FBQXhCLFNBQUksR0FBSixJQUFJLENBQW9CO1FBQ2xFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1FBRXZCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM5QixDQUFDO3VHQWxCVSx5QkFBeUIsa0JBSWhCLGVBQWU7MkZBSnhCLHlCQUF5QiwwRENwQnRDLDBoQkFXQTs7MkZEU2EseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLG9CQUFvQjs7MEJBUWpCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9ncmVzc1ZhbHVlIH0gZnJvbSAnLi4vbW9kZWxzL3Byb2dyZXNzVmFsdWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzV2luZG93RGF0YSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGlzRGV0ZXJtaW5hdGU6IGJvb2xlYW47XG4gIHByb2dyZXNzOiBPYnNlcnZhYmxlPFByb2dyZXNzVmFsdWU+O1xuICBpc0NhbmNlbE9wZXJhdGlvbkF2YWlsYWJsZTogYm9vbGVhbjtcbiAgY2FuY2VsT3BlcmF0aW9uOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBQcm9ncmVzc1dpbmRvd1Jlc3VsdCA9IG9iamVjdFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbS1wcm9ncmVzcy13aW5kb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vbW0tcHJvZ3Jlc3Mtd2luZG93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW0tcHJvZ3Jlc3Mtd2luZG93LmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNbVByb2dyZXNzV2luZG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIHN0YXR1c1RleHQ6IHN0cmluZyB8IG51bGw7XG4gIHB1YmxpYyBwcm9ncmVzc1ZhbHVlOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBQcm9ncmVzc1dpbmRvd0RhdGEpIHtcbiAgICB0aGlzLnN0YXR1c1RleHQgPSBudWxsO1xuICAgIHRoaXMucHJvZ3Jlc3NWYWx1ZSA9IDA7XG5cbiAgICBkYXRhLnByb2dyZXNzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIHRoaXMuc3RhdHVzVGV4dCA9IHZhbHVlLnN0YXR1c1RleHQ7XG4gICAgICB0aGlzLnByb2dyZXNzVmFsdWUgPSB2YWx1ZS5wcm9ncmVzc1ZhbHVlO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG9uQ2FuY2VsQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhLmNhbmNlbE9wZXJhdGlvbigpO1xuICB9XG59XG4iLCI8aDEgbWF0LWRpYWxvZy10aXRsZT57e2RhdGEudGl0bGV9fTwvaDE+XG48ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cbiAgPGRpdiBmeExheW91dD1cImNvbHVtblwiPlxuICAgIDxtYXQtcHJvZ3Jlc3MtYmFyICpuZ0lmPVwiZGF0YS5pc0RldGVybWluYXRlXCIgW3ZhbHVlXT1cInByb2dyZXNzVmFsdWVcIiBtb2RlPVwiZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XG4gICAgPG1hdC1wcm9ncmVzcy1iYXIgKm5nSWY9XCIhZGF0YS5pc0RldGVybWluYXRlXCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XG4gICAgPHA+e3tzdGF0dXNUZXh0fX08L3A+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IHN0eWxlPVwianVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcIiBtYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDxidXR0b24gKGNsaWNrKT1cIm9uQ2FuY2VsQ2xpY2soKVwiICpuZ0lmPVwiZGF0YS5pc0NhbmNlbE9wZXJhdGlvbkF2YWlsYWJsZVwiIG1hdC1idXR0b24+Q2FuY2VsPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { MmNotificationBarComponent } from './mm-notification-bar/mm-notification-bar.component';
|
|
4
|
+
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
5
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
+
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
|
7
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
8
|
+
import { MmMessageDetailsComponent } from './mm-message-details/mm-message-details.component';
|
|
9
|
+
import { MmAutocompleteInputComponent } from './mm-autocomplete-input/mm-autocomplete-input.component';
|
|
10
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
11
|
+
import { MatInputModule } from '@angular/material/input';
|
|
12
|
+
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
13
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
14
|
+
import { MmEntitySelectInputComponent } from './mm-entity-select-input/mm-entity-select-input.component';
|
|
15
|
+
import { MmMultipleEntitySelectInputComponent } from './mm-multiple-entity-select-input/mm-multiple-entity-select-input.component';
|
|
16
|
+
import { MatChipsModule } from '@angular/material/chips';
|
|
17
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
18
|
+
import { MmBreadcrumbComponent } from "./mm-breadcrumb/mm-breadcrumb.component";
|
|
19
|
+
import { MmConfirmationWindowComponent } from "./mm-confirmation-window/mm-confirmation-window.component";
|
|
20
|
+
import { MmProgressWindowComponent } from "./mm-progress-window/mm-progress-window.component";
|
|
21
|
+
import * as i0 from "@angular/core";
|
|
22
|
+
export class MmSharedUiModule {
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmSharedUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
24
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: MmSharedUiModule, declarations: [MmBreadcrumbComponent,
|
|
25
|
+
MmConfirmationWindowComponent,
|
|
26
|
+
MmProgressWindowComponent,
|
|
27
|
+
MmNotificationBarComponent,
|
|
28
|
+
MmMessageDetailsComponent,
|
|
29
|
+
MmAutocompleteInputComponent,
|
|
30
|
+
MmEntitySelectInputComponent,
|
|
31
|
+
MmMultipleEntitySelectInputComponent], imports: [CommonModule,
|
|
32
|
+
MatToolbarModule,
|
|
33
|
+
MatButtonModule,
|
|
34
|
+
MatSnackBarModule,
|
|
35
|
+
MatDialogModule,
|
|
36
|
+
MatAutocompleteModule,
|
|
37
|
+
MatInputModule,
|
|
38
|
+
MatProgressSpinnerModule,
|
|
39
|
+
MatChipsModule,
|
|
40
|
+
MatIconModule,
|
|
41
|
+
ReactiveFormsModule], exports: [MmBreadcrumbComponent, MmConfirmationWindowComponent, MmNotificationBarComponent, MmAutocompleteInputComponent, MmEntitySelectInputComponent, MmMultipleEntitySelectInputComponent] });
|
|
42
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmSharedUiModule, imports: [CommonModule,
|
|
43
|
+
MatToolbarModule,
|
|
44
|
+
MatButtonModule,
|
|
45
|
+
MatSnackBarModule,
|
|
46
|
+
MatDialogModule,
|
|
47
|
+
MatAutocompleteModule,
|
|
48
|
+
MatInputModule,
|
|
49
|
+
MatProgressSpinnerModule,
|
|
50
|
+
MatChipsModule,
|
|
51
|
+
MatIconModule,
|
|
52
|
+
ReactiveFormsModule] });
|
|
53
|
+
}
|
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: MmSharedUiModule, decorators: [{
|
|
55
|
+
type: NgModule,
|
|
56
|
+
args: [{
|
|
57
|
+
declarations: [
|
|
58
|
+
MmBreadcrumbComponent,
|
|
59
|
+
MmConfirmationWindowComponent,
|
|
60
|
+
MmProgressWindowComponent,
|
|
61
|
+
MmNotificationBarComponent,
|
|
62
|
+
MmMessageDetailsComponent,
|
|
63
|
+
MmAutocompleteInputComponent,
|
|
64
|
+
MmEntitySelectInputComponent,
|
|
65
|
+
MmMultipleEntitySelectInputComponent,
|
|
66
|
+
],
|
|
67
|
+
exports: [MmBreadcrumbComponent, MmConfirmationWindowComponent, MmNotificationBarComponent, MmAutocompleteInputComponent, MmEntitySelectInputComponent, MmMultipleEntitySelectInputComponent],
|
|
68
|
+
imports: [
|
|
69
|
+
CommonModule,
|
|
70
|
+
MatToolbarModule,
|
|
71
|
+
MatButtonModule,
|
|
72
|
+
MatSnackBarModule,
|
|
73
|
+
MatDialogModule,
|
|
74
|
+
MatAutocompleteModule,
|
|
75
|
+
MatInputModule,
|
|
76
|
+
MatProgressSpinnerModule,
|
|
77
|
+
MatChipsModule,
|
|
78
|
+
MatIconModule,
|
|
79
|
+
ReactiveFormsModule
|
|
80
|
+
]
|
|
81
|
+
}]
|
|
82
|
+
}] });
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW0tc2hhcmVkLXVpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvc2hhcmVkLXVpL3NyYy9saWIvbW0tc2hhcmVkLXVpLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQztBQUNuSSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBQ3hHLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLG1EQUFtRCxDQUFDOztBQTRCNUYsTUFBTSxPQUFPLGdCQUFnQjt1R0FBaEIsZ0JBQWdCO3dHQUFoQixnQkFBZ0IsaUJBeEJ6QixxQkFBcUI7WUFDckIsNkJBQTZCO1lBQzdCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIseUJBQXlCO1lBQ3pCLDRCQUE0QjtZQUM1Qiw0QkFBNEI7WUFDNUIsb0NBQW9DLGFBSXBDLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGNBQWM7WUFDZCx3QkFBd0I7WUFDeEIsY0FBYztZQUNkLGFBQWE7WUFDYixtQkFBbUIsYUFaWCxxQkFBcUIsRUFBRSw2QkFBNkIsRUFBRSwwQkFBMEIsRUFBRSw0QkFBNEIsRUFBRSw0QkFBNEIsRUFBRSxvQ0FBb0M7d0dBZWpMLGdCQUFnQixZQWJ6QixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixpQkFBaUI7WUFDakIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixjQUFjO1lBQ2Qsd0JBQXdCO1lBQ3hCLGNBQWM7WUFDZCxhQUFhO1lBQ2IsbUJBQW1COzsyRkFHVixnQkFBZ0I7a0JBMUI1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLDZCQUE2Qjt3QkFDN0IseUJBQXlCO3dCQUN6QiwwQkFBMEI7d0JBQzFCLHlCQUF5Qjt3QkFDekIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7d0JBQzVCLG9DQUFvQztxQkFDckM7b0JBQ0QsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsNkJBQTZCLEVBQUUsMEJBQTBCLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLEVBQUUsb0NBQW9DLENBQUM7b0JBQzdMLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixjQUFjO3dCQUNkLHdCQUF3Qjt3QkFDeEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1tTm90aWZpY2F0aW9uQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9tbS1ub3RpZmljYXRpb24tYmFyL21tLW5vdGlmaWNhdGlvbi1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTW1NZXNzYWdlRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vbW0tbWVzc2FnZS1kZXRhaWxzL21tLW1lc3NhZ2UtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW1BdXRvY29tcGxldGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vbW0tYXV0b2NvbXBsZXRlLWlucHV0L21tLWF1dG9jb21wbGV0ZS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTW1FbnRpdHlTZWxlY3RJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vbW0tZW50aXR5LXNlbGVjdC1pbnB1dC9tbS1lbnRpdHktc2VsZWN0LWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNbU11bHRpcGxlRW50aXR5U2VsZWN0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuL21tLW11bHRpcGxlLWVudGl0eS1zZWxlY3QtaW5wdXQvbW0tbXVsdGlwbGUtZW50aXR5LXNlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01tQnJlYWRjcnVtYkNvbXBvbmVudH0gZnJvbSBcIi4vbW0tYnJlYWRjcnVtYi9tbS1icmVhZGNydW1iLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtNbUNvbmZpcm1hdGlvbldpbmRvd0NvbXBvbmVudH0gZnJvbSBcIi4vbW0tY29uZmlybWF0aW9uLXdpbmRvdy9tbS1jb25maXJtYXRpb24td2luZG93LmNvbXBvbmVudFwiO1xuaW1wb3J0IHtNbVByb2dyZXNzV2luZG93Q29tcG9uZW50fSBmcm9tIFwiLi9tbS1wcm9ncmVzcy13aW5kb3cvbW0tcHJvZ3Jlc3Mtd2luZG93LmNvbXBvbmVudFwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBNbUJyZWFkY3J1bWJDb21wb25lbnQsXG4gICAgTW1Db25maXJtYXRpb25XaW5kb3dDb21wb25lbnQsXG4gICAgTW1Qcm9ncmVzc1dpbmRvd0NvbXBvbmVudCxcbiAgICBNbU5vdGlmaWNhdGlvbkJhckNvbXBvbmVudCxcbiAgICBNbU1lc3NhZ2VEZXRhaWxzQ29tcG9uZW50LFxuICAgIE1tQXV0b2NvbXBsZXRlSW5wdXRDb21wb25lbnQsXG4gICAgTW1FbnRpdHlTZWxlY3RJbnB1dENvbXBvbmVudCxcbiAgICBNbU11bHRpcGxlRW50aXR5U2VsZWN0SW5wdXRDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtNbUJyZWFkY3J1bWJDb21wb25lbnQsIE1tQ29uZmlybWF0aW9uV2luZG93Q29tcG9uZW50LCBNbU5vdGlmaWNhdGlvbkJhckNvbXBvbmVudCwgTW1BdXRvY29tcGxldGVJbnB1dENvbXBvbmVudCwgTW1FbnRpdHlTZWxlY3RJbnB1dENvbXBvbmVudCwgTW1NdWx0aXBsZUVudGl0eVNlbGVjdElucHV0Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRTbmFja0Jhck1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRDaGlwc01vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNbVNoYXJlZFVpTW9kdWxlIHt9XG4iXX0=
|
|
@@ -50,4 +50,4 @@ export class AbstractDetailsComponent {
|
|
|
50
50
|
this._loading = false;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3REZXRhaWxzQ29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVzaG1ha2Vycy9zaGFyZWQtdWkvc3JjL2xpYi9tb2RlbHMvYWJzdHJhY3REZXRhaWxzQ29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUxRCxNQUFNLE9BQWdCLHdCQUF3QjtJQUNwQyxRQUFRLENBQVU7SUFDVCxVQUFVLENBQVk7SUFDL0IsT0FBTyxDQUFpQjtJQUVoQyxZQUFzQixTQUFvQjtRQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxPQUFPLENBQUMsS0FBYztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFXLE1BQU0sQ0FBQyxLQUFxQjtRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVNLFFBQVEsR0FBRyxDQUFDLFdBQW1CLEVBQUUsU0FBaUIsRUFBVyxFQUFFO1FBQ3BFLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ25FLENBQUMsQ0FBQztJQUVLLFlBQVksR0FBRyxDQUFDLFNBQWlCLEVBQVcsRUFBRTtRQUNuRCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdDLENBQUMsQ0FBQztJQUVLLGNBQWMsQ0FBQyxXQUFtQjtRQUN2QyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsWUFBaUI7UUFDdkMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFFUyxtQkFBbUI7UUFDM0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJc29EYXRlVGltZSB9IGZyb20gJ0BtZXNobWFrZXJzL3NoYXJlZC1zZXJ2aWNlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdERldGFpbHNDb21wb25lbnQ8VEVudGl0eT4ge1xuICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuO1xuICBwcml2YXRlIHJlYWRvbmx5IF9vd25lckZvcm06IEZvcm1Hcm91cDtcbiAgcHJpdmF0ZSBfZW50aXR5OiBURW50aXR5IHwgbnVsbDtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLl9lbnRpdHkgPSBudWxsO1xuICAgIHRoaXMuX293bmVyRm9ybSA9IGZvcm1Hcm91cDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbG9hZGluZyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2xvYWRpbmcgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW50aXR5KCk6IFRFbnRpdHkgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXR5O1xuICB9XG5cbiAgcHVibGljIHNldCBlbnRpdHkodmFsdWU6IFRFbnRpdHkgfCBudWxsKSB7XG4gICAgdGhpcy5fZW50aXR5ID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG93bmVyRm9ybSgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLl9vd25lckZvcm07XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzTG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkgIT09IG51bGw7XG4gIH1cblxuICBwdWJsaWMgaGFzRXJyb3IgPSAoY29udHJvbE5hbWU6IHN0cmluZywgZXJyb3JOYW1lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgICByZXR1cm4gdGhpcy5vd25lckZvcm0/LmNvbnRyb2xzW2NvbnRyb2xOYW1lXS5oYXNFcnJvcihlcnJvck5hbWUpO1xuICB9O1xuXG4gIHB1YmxpYyBoYXNGb3JtRXJyb3IgPSAoZXJyb3JOYW1lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgICByZXR1cm4gdGhpcy5vd25lckZvcm0/Lmhhc0Vycm9yKGVycm9yTmFtZSk7XG4gIH07XG5cbiAgcHVibGljIHVwZGF0ZURhdGVUaW1lKGNvbnRyb2xOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLm93bmVyRm9ybT8uZ2V0KGNvbnRyb2xOYW1lKT8uc2V0VmFsdWUoSXNvRGF0ZVRpbWUudXRjVG9Mb2NhbERhdGVUaW1lSXNvKElzb0RhdGVUaW1lLmN1cnJlbnRVdGNEYXRlVGltZUlzbygpKSk7XG4gIH1cblxuICBwdWJsaWMgY29weUlucHV0TWVzc2FnZShpbnB1dEVsZW1lbnQ6IGFueSk6IHZvaWQge1xuICAgIGlucHV0RWxlbWVudC5zZWxlY3QoKTtcbiAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnY29weScpO1xuICAgIGlucHV0RWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSgwLCAwKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvblByb2dyZXNzU3RhcnRpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fbG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5vd25lckZvcm0/LmRpc2FibGUoKTtcbiAgICB0aGlzLm93bmVyRm9ybT8udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uUHJvZ3Jlc3NDb21wbGV0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5vd25lckZvcm0/LmVuYWJsZSgpO1xuICAgIHRoaXMuX2xvYWRpbmcgPSBmYWxzZTtcbiAgfVxufVxuIl19
|
|
@@ -33,4 +33,4 @@ export class CommonValidators {
|
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uVmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvc2hhcmVkLXVpL3NyYy9saWIvbW9kZWxzL2NvbW1vblZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRSxTQUFTLGlCQUFpQixDQUFDLEtBQVU7SUFDbkMsOERBQThEO0lBQzlELE9BQU8sS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxPQUFPLGdCQUFnQjtJQUNwQixNQUFNLENBQUMsV0FBVztRQUN2QixPQUFPLFVBQVUsQ0FBQyxPQUFPLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU87UUFDbkIsT0FBTyxVQUFVLENBQUMsT0FBTyxDQUN2QiwwSEFBMEgsQ0FDM0gsQ0FBQztJQUNKLENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZSxDQUFDLGlCQUF5QjtRQUNyRCxPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1lBQ2xDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDNUIsT0FBTyxLQUFLLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDNUYsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FDL0IsaUJBQXlCLEVBQ3pCLDRCQUEyRDtRQUUzRCxPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1lBQ2xDLElBQUksT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLElBQUksNEJBQTRCLENBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBRSxLQUF1QixDQUFDLEVBQUUsQ0FBQztnQkFDNUgsT0FBTyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDdEUsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVNLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxZQUFzQjtRQUNwRCxPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1lBQ2xDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDbkMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztZQUM3RCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IHR5cGUgQ29tcGFyZVZhbHVlRm48VFZhbHVlPiA9ICh2YWx1ZTogVFZhbHVlKSA9PiBib29sZWFuO1xuXG5mdW5jdGlvbiBpc0VtcHR5SW5wdXRWYWx1ZSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gIC8vIHdlIGRvbid0IGNoZWNrIGZvciBzdHJpbmcgaGVyZSBzbyBpdCBhbHNvIHdvcmtzIHdpdGggYXJyYXlzXG4gIHJldHVybiB2YWx1ZSA9PSBudWxsIHx8IHZhbHVlLmxlbmd0aCA9PT0gMDtcbn1cblxuZXhwb3J0IGNsYXNzIENvbW1vblZhbGlkYXRvcnMge1xuICBwdWJsaWMgc3RhdGljIHBob25lTnVtYmVyKCk6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gVmFsaWRhdG9ycy5wYXR0ZXJuKCdeWytdKlsoXXswLDF9WzAtOV17MSw0fVspXXswLDF9Wy1cXFxcc1xcXFwuLzAtOV0qJCcpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBodHRwVXJpKCk6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gVmFsaWRhdG9ycy5wYXR0ZXJuKFxuICAgICAgJ14oaHR0cDpcXFxcL1xcXFwvfGh0dHBzOlxcXFwvXFxcXC8pKFthLXpBLVowLTktX10rXFxcXC4pKlthLXpBLVowLTldW2EtekEtWjAtOS1fXSsoXFxcXC5bYS16QS1aXXsyLDExfT8pKig6WzAtOV17Miw1fSl7MCwxfVxcXFwvezAsMX0kJ1xuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGVuc3VyZVNhbWVWYWx1ZShzb3VyY2VDb250cm9sTmFtZTogc3RyaW5nKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG4gICAgICByZXR1cm4gdmFsdWUgPT09IGNvbnRyb2wucGFyZW50Py5nZXQoc291cmNlQ29udHJvbE5hbWUpPy52YWx1ZSA/IG51bGwgOiB7IG5vdFNhbWU6IHRydWUgfTtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjb25kaXRpb25hbFJlcXVpcmVkPFRDb21wYXJlVmFsdWU+KFxuICAgIHNvdXJjZUNvbnRyb2xOYW1lOiBzdHJpbmcsXG4gICAgc291cmNlVmFsdWVDb21wYXJlRXhwcmVzc2lvbjogQ29tcGFyZVZhbHVlRm48VENvbXBhcmVWYWx1ZT5cbiAgKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgICBpZiAoY29udHJvbC5wYXJlbnQgIT0gbnVsbCAmJiBzb3VyY2VWYWx1ZUNvbXBhcmVFeHByZXNzaW9uKChjb250cm9sLnBhcmVudC5nZXQoc291cmNlQ29udHJvbE5hbWUpPy52YWx1ZSBhcyBUQ29tcGFyZVZhbHVlKSkpIHtcbiAgICAgICAgcmV0dXJuIGlzRW1wdHlJbnB1dFZhbHVlKGNvbnRyb2wudmFsdWUpID8geyByZXF1aXJlZDogdHJ1ZSB9IDogbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRlcGVuZGVudENvbnRyb2xzKGNvbnRyb2xOYW1lczogc3RyaW5nW10pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICAgIGNvbnRyb2xOYW1lcy5mb3JFYWNoKChjb250cm9sTmFtZSkgPT4ge1xuICAgICAgICBjb250cm9sLnBhcmVudD8uZ2V0KGNvbnRyb2xOYW1lKT8udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9XG59XG4iXX0=
|