@huntsman-cancer-institute/input 16.0.1 → 17.0.1
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/date/date-base.d.ts +65 -65
- package/date/date-date-range.component.d.ts +32 -32
- package/date/date-date.component.d.ts +53 -53
- package/date/date-validator.d.ts +17 -17
- package/date/date.module.d.ts +16 -16
- package/dropdown/dropdown-index.d.ts +6 -6
- package/dropdown/dropdown-select-result.component.d.ts +23 -23
- package/dropdown/dropdown-select.component.d.ts +76 -76
- package/dropdown/dropdown.component.d.ts +40 -40
- package/dropdown/dropdown.module.d.ts +13 -13
- package/dropdown/dropdown.service.d.ts +51 -51
- package/dropdown/messages.d.ts +11 -11
- package/dropdown/select-item.d.ts +16 -16
- package/dropdown/template-dropdown.directive.d.ts +12 -12
- package/esm2022/date/date-base.mjs +114 -114
- package/esm2022/date/date-date-range.component.mjs +92 -92
- package/esm2022/date/date-date.component.mjs +189 -189
- package/esm2022/date/date-validator.mjs +40 -40
- package/esm2022/date/date.module.mjs +60 -60
- package/esm2022/dropdown/dropdown-index.mjs +5 -5
- package/esm2022/dropdown/dropdown-select-result.component.mjs +85 -85
- package/esm2022/dropdown/dropdown-select.component.mjs +360 -360
- package/esm2022/dropdown/dropdown.component.mjs +170 -170
- package/esm2022/dropdown/dropdown.module.mjs +50 -50
- package/esm2022/dropdown/dropdown.service.mjs +133 -133
- package/esm2022/dropdown/messages.mjs +9 -9
- package/esm2022/dropdown/select-item.mjs +11 -11
- package/esm2022/dropdown/template-dropdown.directive.mjs +26 -26
- package/esm2022/huntsman-cancer-institute-input.mjs +4 -4
- package/esm2022/index.mjs +19 -19
- package/esm2022/inline/inline.component.mjs +179 -179
- package/esm2022/inline/inline.module.mjs +28 -28
- package/esm2022/search/search.component.mjs +157 -157
- package/esm2022/search/search.module.mjs +32 -32
- package/esm2022/select/custom-combobox.component.mjs +531 -531
- package/esm2022/select/custom-multi-combobox.component.mjs +232 -232
- package/esm2022/select/md-multi-select.component.mjs +127 -127
- package/esm2022/select/md-select.component.mjs +107 -107
- package/esm2022/select/native-select.component.mjs +188 -188
- package/esm2022/select/select.module.mjs +83 -83
- package/fesm2022/huntsman-cancer-institute-input.mjs +2797 -2797
- package/fesm2022/huntsman-cancer-institute-input.mjs.map +1 -1
- package/index.d.ts +20 -20
- package/inline/inline.component.d.ts +66 -66
- package/inline/inline.module.d.ts +9 -9
- package/package.json +7 -7
- package/search/search.component.d.ts +42 -42
- package/search/search.module.d.ts +10 -10
- package/select/custom-combobox.component.d.ts +98 -98
- package/select/custom-multi-combobox.component.d.ts +50 -50
- package/select/md-multi-select.component.d.ts +32 -32
- package/select/md-select.component.d.ts +30 -30
- package/select/native-select.component.d.ts +37 -37
- package/select/select.module.d.ts +21 -21
|
@@ -1,154 +1,154 @@
|
|
|
1
|
-
import { Component, ContentChild, forwardRef, HostListener, Input, isDevMode, SimpleChange, TemplateRef } from "@angular/core";
|
|
2
|
-
import { NG_VALUE_ACCESSOR, NgModel } from "@angular/forms";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
/**
|
|
6
|
-
* This component is designed to take any input as ng-content and wrap it such that it renders as a string. When hovering
|
|
7
|
-
* over, a border and edit icon is shown. Upon clicking, it enters edit mode and the passed in input is rendered. The
|
|
8
|
-
* bound ngModel is wrapped in an intermediary. This component binds a separate internal value to the wrapped component.
|
|
9
|
-
* This allows the user to cancel out and not update the ngModel bound to this component.
|
|
10
|
-
*/
|
|
11
|
-
export class InlineComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.noValueMessage = "Click to Add";
|
|
14
|
-
// View state
|
|
15
|
-
this.editMode = false;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Called when the model updates and we need to up the view.
|
|
19
|
-
*
|
|
20
|
-
* @param value
|
|
21
|
-
*/
|
|
22
|
-
writeValue(value) {
|
|
23
|
-
if (isDevMode()) {
|
|
24
|
-
console.debug("InlineComponent: writeValue");
|
|
25
|
-
console.debug("InlineComponent: " + value);
|
|
26
|
-
}
|
|
27
|
-
// Update the internal values.
|
|
28
|
-
this.value = value;
|
|
29
|
-
this.modifiedValue = this.value;
|
|
30
|
-
if (this.ngModelRef !== undefined) {
|
|
31
|
-
if (isDevMode()) {
|
|
32
|
-
console.debug("InlineComponent: update ngModelRef: " + this.modifiedValue);
|
|
33
|
-
}
|
|
34
|
-
// Update the model, then tell the directive that it has been updated.
|
|
35
|
-
this.ngModelRef.model = this.modifiedValue;
|
|
36
|
-
this.ngModelRef.ngOnChanges({
|
|
37
|
-
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Register the function that is called when the value changes in the value.
|
|
43
|
-
*
|
|
44
|
-
* @param {(value: any) => void} fn
|
|
45
|
-
*/
|
|
46
|
-
registerOnChange(fn) {
|
|
47
|
-
if (isDevMode()) {
|
|
48
|
-
console.debug("InlineComponent: registerOnChange");
|
|
49
|
-
console.debug(fn);
|
|
50
|
-
}
|
|
51
|
-
this.onChange = () => {
|
|
52
|
-
if (isDevMode()) {
|
|
53
|
-
console.debug("InlineComponent: onChange Function" + this.value);
|
|
54
|
-
}
|
|
55
|
-
fn(this.value);
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Register the function called to update the model on blur.
|
|
60
|
-
*
|
|
61
|
-
* @param {() => void} fn
|
|
62
|
-
*/
|
|
63
|
-
registerOnTouched(fn) {
|
|
64
|
-
if (isDevMode()) {
|
|
65
|
-
console.debug("InlineComponent: registerOnTouched");
|
|
66
|
-
console.debug(fn);
|
|
67
|
-
}
|
|
68
|
-
this.onTouched = fn;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Set the editMode. If true then tell the passed in input to bind the current modified value.
|
|
72
|
-
*
|
|
73
|
-
* @param {boolean} editMode
|
|
74
|
-
*/
|
|
75
|
-
setEditMode(event, editMode) {
|
|
76
|
-
event.stopPropagation();
|
|
77
|
-
this.editMode = editMode;
|
|
78
|
-
if (this.editMode) {
|
|
79
|
-
this.onTouched();
|
|
80
|
-
this.ngModelRef.model = this.modifiedValue;
|
|
81
|
-
this.ngModelRef.ngOnChanges({
|
|
82
|
-
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Cancel edit mode which resets the modified value.
|
|
88
|
-
*/
|
|
89
|
-
cancel() {
|
|
90
|
-
this.editMode = false;
|
|
91
|
-
this.modifiedValue = this.value;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Update the value with the modified value and call the onChange function so two way binding is updated with this component.
|
|
95
|
-
*/
|
|
96
|
-
save() {
|
|
97
|
-
if (isDevMode()) {
|
|
98
|
-
console.debug("InlineComponent: save modifiedValue: " + this.modifiedValue + ", value: " + this.value);
|
|
99
|
-
}
|
|
100
|
-
this.value = this.modifiedValue;
|
|
101
|
-
this.onChange(this.value);
|
|
102
|
-
this.editMode = false;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* The component to wrap must be named with #input and have a ngModel directive. When the content is set here, we
|
|
106
|
-
* read the ngModel and set the model as well as listen to changes.
|
|
107
|
-
*
|
|
108
|
-
* @param {NgModel} ngModel
|
|
109
|
-
*/
|
|
110
|
-
set contentChild(ngModel) {
|
|
111
|
-
if (isDevMode()) {
|
|
112
|
-
console.debug("InlineComponent: set contentChild: " + this.modifiedValue);
|
|
113
|
-
console.debug(ngModel);
|
|
114
|
-
}
|
|
115
|
-
this.ngModelRef = ngModel;
|
|
116
|
-
if (this.ngModelRef) {
|
|
117
|
-
this.ngModelRef.model = this.modifiedValue;
|
|
118
|
-
this.ngModelRef.ngOnChanges({
|
|
119
|
-
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
120
|
-
});
|
|
121
|
-
this.ngModelRef.update.subscribe((value) => {
|
|
122
|
-
if (isDevMode()) {
|
|
123
|
-
console.debug("InlineComponent: cmpt model change: " + value);
|
|
124
|
-
}
|
|
125
|
-
this.modifiedValue = value;
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* If the click target is outside the inline input then cancel it.
|
|
131
|
-
*
|
|
132
|
-
* @param {MouseEvent} event
|
|
133
|
-
*/
|
|
134
|
-
documentClick(event) {
|
|
135
|
-
if (this.editMode) {
|
|
136
|
-
if (isDevMode()) {
|
|
137
|
-
console.debug("InlineComponent: documentClick");
|
|
138
|
-
}
|
|
139
|
-
let e = event.target.closest("hci-inline-input");
|
|
140
|
-
if (!e) {
|
|
141
|
-
this.save();
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
146
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
147
|
-
{
|
|
148
|
-
provide: NG_VALUE_ACCESSOR,
|
|
149
|
-
useExisting: forwardRef(() => InlineComponent),
|
|
150
|
-
multi: true
|
|
151
|
-
}
|
|
1
|
+
import { Component, ContentChild, forwardRef, HostListener, Input, isDevMode, SimpleChange, TemplateRef } from "@angular/core";
|
|
2
|
+
import { NG_VALUE_ACCESSOR, NgModel } from "@angular/forms";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
/**
|
|
6
|
+
* This component is designed to take any input as ng-content and wrap it such that it renders as a string. When hovering
|
|
7
|
+
* over, a border and edit icon is shown. Upon clicking, it enters edit mode and the passed in input is rendered. The
|
|
8
|
+
* bound ngModel is wrapped in an intermediary. This component binds a separate internal value to the wrapped component.
|
|
9
|
+
* This allows the user to cancel out and not update the ngModel bound to this component.
|
|
10
|
+
*/
|
|
11
|
+
export class InlineComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.noValueMessage = "Click to Add";
|
|
14
|
+
// View state
|
|
15
|
+
this.editMode = false;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Called when the model updates and we need to up the view.
|
|
19
|
+
*
|
|
20
|
+
* @param value
|
|
21
|
+
*/
|
|
22
|
+
writeValue(value) {
|
|
23
|
+
if (isDevMode()) {
|
|
24
|
+
console.debug("InlineComponent: writeValue");
|
|
25
|
+
console.debug("InlineComponent: " + value);
|
|
26
|
+
}
|
|
27
|
+
// Update the internal values.
|
|
28
|
+
this.value = value;
|
|
29
|
+
this.modifiedValue = this.value;
|
|
30
|
+
if (this.ngModelRef !== undefined) {
|
|
31
|
+
if (isDevMode()) {
|
|
32
|
+
console.debug("InlineComponent: update ngModelRef: " + this.modifiedValue);
|
|
33
|
+
}
|
|
34
|
+
// Update the model, then tell the directive that it has been updated.
|
|
35
|
+
this.ngModelRef.model = this.modifiedValue;
|
|
36
|
+
this.ngModelRef.ngOnChanges({
|
|
37
|
+
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Register the function that is called when the value changes in the value.
|
|
43
|
+
*
|
|
44
|
+
* @param {(value: any) => void} fn
|
|
45
|
+
*/
|
|
46
|
+
registerOnChange(fn) {
|
|
47
|
+
if (isDevMode()) {
|
|
48
|
+
console.debug("InlineComponent: registerOnChange");
|
|
49
|
+
console.debug(fn);
|
|
50
|
+
}
|
|
51
|
+
this.onChange = () => {
|
|
52
|
+
if (isDevMode()) {
|
|
53
|
+
console.debug("InlineComponent: onChange Function" + this.value);
|
|
54
|
+
}
|
|
55
|
+
fn(this.value);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Register the function called to update the model on blur.
|
|
60
|
+
*
|
|
61
|
+
* @param {() => void} fn
|
|
62
|
+
*/
|
|
63
|
+
registerOnTouched(fn) {
|
|
64
|
+
if (isDevMode()) {
|
|
65
|
+
console.debug("InlineComponent: registerOnTouched");
|
|
66
|
+
console.debug(fn);
|
|
67
|
+
}
|
|
68
|
+
this.onTouched = fn;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Set the editMode. If true then tell the passed in input to bind the current modified value.
|
|
72
|
+
*
|
|
73
|
+
* @param {boolean} editMode
|
|
74
|
+
*/
|
|
75
|
+
setEditMode(event, editMode) {
|
|
76
|
+
event.stopPropagation();
|
|
77
|
+
this.editMode = editMode;
|
|
78
|
+
if (this.editMode) {
|
|
79
|
+
this.onTouched();
|
|
80
|
+
this.ngModelRef.model = this.modifiedValue;
|
|
81
|
+
this.ngModelRef.ngOnChanges({
|
|
82
|
+
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Cancel edit mode which resets the modified value.
|
|
88
|
+
*/
|
|
89
|
+
cancel() {
|
|
90
|
+
this.editMode = false;
|
|
91
|
+
this.modifiedValue = this.value;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Update the value with the modified value and call the onChange function so two way binding is updated with this component.
|
|
95
|
+
*/
|
|
96
|
+
save() {
|
|
97
|
+
if (isDevMode()) {
|
|
98
|
+
console.debug("InlineComponent: save modifiedValue: " + this.modifiedValue + ", value: " + this.value);
|
|
99
|
+
}
|
|
100
|
+
this.value = this.modifiedValue;
|
|
101
|
+
this.onChange(this.value);
|
|
102
|
+
this.editMode = false;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* The component to wrap must be named with #input and have a ngModel directive. When the content is set here, we
|
|
106
|
+
* read the ngModel and set the model as well as listen to changes.
|
|
107
|
+
*
|
|
108
|
+
* @param {NgModel} ngModel
|
|
109
|
+
*/
|
|
110
|
+
set contentChild(ngModel) {
|
|
111
|
+
if (isDevMode()) {
|
|
112
|
+
console.debug("InlineComponent: set contentChild: " + this.modifiedValue);
|
|
113
|
+
console.debug(ngModel);
|
|
114
|
+
}
|
|
115
|
+
this.ngModelRef = ngModel;
|
|
116
|
+
if (this.ngModelRef) {
|
|
117
|
+
this.ngModelRef.model = this.modifiedValue;
|
|
118
|
+
this.ngModelRef.ngOnChanges({
|
|
119
|
+
model: new SimpleChange(undefined, this.modifiedValue, false)
|
|
120
|
+
});
|
|
121
|
+
this.ngModelRef.update.subscribe((value) => {
|
|
122
|
+
if (isDevMode()) {
|
|
123
|
+
console.debug("InlineComponent: cmpt model change: " + value);
|
|
124
|
+
}
|
|
125
|
+
this.modifiedValue = value;
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* If the click target is outside the inline input then cancel it.
|
|
131
|
+
*
|
|
132
|
+
* @param {MouseEvent} event
|
|
133
|
+
*/
|
|
134
|
+
documentClick(event) {
|
|
135
|
+
if (this.editMode) {
|
|
136
|
+
if (isDevMode()) {
|
|
137
|
+
console.debug("InlineComponent: documentClick");
|
|
138
|
+
}
|
|
139
|
+
let e = event.target.closest("hci-inline-input");
|
|
140
|
+
if (!e) {
|
|
141
|
+
this.save();
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InlineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
146
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: InlineComponent, selector: "hci-inline-input", inputs: { noValueMessage: "noValueMessage" }, host: { listeners: { "document:click": "documentClick($event)" } }, providers: [
|
|
147
|
+
{
|
|
148
|
+
provide: NG_VALUE_ACCESSOR,
|
|
149
|
+
useExisting: forwardRef(() => InlineComponent),
|
|
150
|
+
multi: true
|
|
151
|
+
}
|
|
152
152
|
], queries: [{ propertyName: "renderTemplate", first: true, predicate: ["renderTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "contentChild", first: true, predicate: ["input"], descendants: true, read: NgModel }], ngImport: i0, template: `
|
|
153
153
|
<div *ngIf="!editMode; else editTemplate"
|
|
154
154
|
(click)="setEditMode($event, true)"
|
|
@@ -184,12 +184,12 @@ export class InlineComponent {
|
|
|
184
184
|
</div>
|
|
185
185
|
</div>
|
|
186
186
|
</ng-template>
|
|
187
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
188
|
-
}
|
|
189
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
190
|
-
type: Component,
|
|
191
|
-
args: [{
|
|
192
|
-
selector: "hci-inline-input",
|
|
187
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
188
|
+
}
|
|
189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InlineComponent, decorators: [{
|
|
190
|
+
type: Component,
|
|
191
|
+
args: [{
|
|
192
|
+
selector: "hci-inline-input",
|
|
193
193
|
template: `
|
|
194
194
|
<div *ngIf="!editMode; else editTemplate"
|
|
195
195
|
(click)="setEditMode($event, true)"
|
|
@@ -225,25 +225,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
225
225
|
</div>
|
|
226
226
|
</div>
|
|
227
227
|
</ng-template>
|
|
228
|
-
`,
|
|
229
|
-
providers: [
|
|
230
|
-
{
|
|
231
|
-
provide: NG_VALUE_ACCESSOR,
|
|
232
|
-
useExisting: forwardRef(() => InlineComponent),
|
|
233
|
-
multi: true
|
|
234
|
-
}
|
|
235
|
-
]
|
|
236
|
-
}]
|
|
237
|
-
}], propDecorators: { renderTemplate: [{
|
|
238
|
-
type: ContentChild,
|
|
239
|
-
args: ["renderTemplate", { read: TemplateRef, static: true }]
|
|
240
|
-
}], noValueMessage: [{
|
|
241
|
-
type: Input
|
|
242
|
-
}], contentChild: [{
|
|
243
|
-
type: ContentChild,
|
|
244
|
-
args: ["input", { read: NgModel, static: false }]
|
|
245
|
-
}], documentClick: [{
|
|
246
|
-
type: HostListener,
|
|
247
|
-
args: ["document:click", ["$event"]]
|
|
248
|
-
}] } });
|
|
249
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0L3NyYy9pbmxpbmUvaW5saW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUNqRixXQUFXLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixpQkFBaUIsRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRWhGOzs7OztHQUtHO0FBK0NILE1BQU0sT0FBTyxlQUFlO0lBOUM1QjtRQWtEVyxtQkFBYyxHQUFXLGNBQWMsQ0FBQztRQUVqRCxhQUFhO1FBQ2IsYUFBUSxHQUFZLEtBQUssQ0FBQztLQWdLM0I7SUFqSkM7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7WUFDN0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsQ0FBQztTQUM1QztRQUVELDhCQUE4QjtRQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFaEMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUNqQyxJQUFJLFNBQVMsRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0NBQXNDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQzVFO1lBRUQsc0VBQXNFO1lBQ3RFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDM0Ms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O29CQUNELFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0Y7OEJBR29FLGNBQWM7c0JBQWhGLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRXhELGNBQWM7c0JBQXRCLEtBQUs7Z0JBNEhxRCxZQUFZO3NCQUF0RSxZQUFZO3VCQUFDLE9BQU8sRUFBRSxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQztnQkEyQnJELGFBQWE7c0JBRFosWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIGlzRGV2TW9kZSwgU2ltcGxlQ2hhbmdlLFxyXG4gIFRlbXBsYXRlUmVmXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIE5nTW9kZWx9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuLyoqXHJcbiAqIFRoaXMgY29tcG9uZW50IGlzIGRlc2lnbmVkIHRvIHRha2UgYW55IGlucHV0IGFzIG5nLWNvbnRlbnQgYW5kIHdyYXAgaXQgc3VjaCB0aGF0IGl0IHJlbmRlcnMgYXMgYSBzdHJpbmcuICBXaGVuIGhvdmVyaW5nXHJcbiAqIG92ZXIsIGEgYm9yZGVyIGFuZCBlZGl0IGljb24gaXMgc2hvd24uICBVcG9uIGNsaWNraW5nLCBpdCBlbnRlcnMgZWRpdCBtb2RlIGFuZCB0aGUgcGFzc2VkIGluIGlucHV0IGlzIHJlbmRlcmVkLiAgVGhlXHJcbiAqIGJvdW5kIG5nTW9kZWwgaXMgd3JhcHBlZCBpbiBhbiBpbnRlcm1lZGlhcnkuICBUaGlzIGNvbXBvbmVudCBiaW5kcyBhIHNlcGFyYXRlIGludGVybmFsIHZhbHVlIHRvIHRoZSB3cmFwcGVkIGNvbXBvbmVudC5cclxuICogVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG8gY2FuY2VsIG91dCBhbmQgbm90IHVwZGF0ZSB0aGUgbmdNb2RlbCBib3VuZCB0byB0aGlzIGNvbXBvbmVudC5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImhjaS1pbmxpbmUtaW5wdXRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiAqbmdJZj1cIiFlZGl0TW9kZTsgZWxzZSBlZGl0VGVtcGxhdGVcIlxyXG4gICAgICAgICAoY2xpY2spPVwic2V0RWRpdE1vZGUoJGV2ZW50LCB0cnVlKVwiXHJcbiAgICAgICAgIGNsYXNzPVwiZWRpdC1mYWxzZSBwbC0xXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyZW5kZXJUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0UmVuZGVyVGVtcGxhdGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyVGVtcGxhdGU7IGNvbnRleHQ6IHt2YWx1ZTogdmFsdWV9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRSZW5kZXJUZW1wbGF0ZT5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVcIj5cclxuICAgICAgICAgIHt7dmFsdWV9fVxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdmFsdWVcIj5cclxuICAgICAgICAgIHt7bm9WYWx1ZU1lc3NhZ2V9fVxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1sLWF1dG9cIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1wZW5jaWxcIj48L2k+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlICNlZGl0VGVtcGxhdGU+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJlZGl0LXRydWVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tZ3JlZW5cIiAoY2xpY2spPVwic2F2ZSgpXCI+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWNoZWNrXCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1yZWQgZC1mbGV4XCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzIG1sLWF1dG8gbXItYXV0b1wiPjwvaT5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElubGluZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5saW5lQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cclxuICBAQ29udGVudENoaWxkKFwicmVuZGVyVGVtcGxhdGVcIiwge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWV9KSByZW5kZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgbm9WYWx1ZU1lc3NhZ2U6IHN0cmluZyA9IFwiQ2xpY2sgdG8gQWRkXCI7XHJcblxyXG4gIC8vIFZpZXcgc3RhdGVcclxuICBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvLyBWYWx1ZSB0aGF0IHVwZGF0ZXMgYmFzZWQgb24gdGhpcyBuZ01vZGVsLlxyXG4gIHZhbHVlOiBhbnk7XHJcblxyXG4gIC8vIFRoZSB2YWx1ZSB3ZSBiaW5kIHRvIHRoZSBwYXNzZWQgaW4gaW5wdXQgY29tcG9uZW50LlxyXG4gIG1vZGlmaWVkVmFsdWU6IGFueTtcclxuXHJcbiAgLy8gU3RvcmUgdGhlIG5nTW9kZWwgZGlyZWN0aXZlIG9uIHRoZSBwYXNzZWQgaW4gaW5wdXQgY29tcG9uZW50LlxyXG4gIG5nTW9kZWxSZWY6IE5nTW9kZWw7XHJcblxyXG4gIC8vIEZ1bmN0aW9ucyB0byByZWdpc3RlciBmcm9tIEFuZ3VsYXJcclxuICBvbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQ7XHJcbiAgb25Ub3VjaGVkOiAoKSA9PiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBDYWxsZWQgd2hlbiB0aGUgbW9kZWwgdXBkYXRlcyBhbmQgd2UgbmVlZCB0byB1cCB0aGUgdmlldy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB2YWx1ZVxyXG4gICAqL1xyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IHdyaXRlVmFsdWVcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IFwiICsgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFVwZGF0ZSB0aGUgaW50ZXJuYWwgdmFsdWVzLlxyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5tb2RpZmllZFZhbHVlID0gdGhpcy52YWx1ZTtcclxuXHJcbiAgICBpZiAodGhpcy5uZ01vZGVsUmVmICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhcIklubGluZUNvbXBvbmVudDogdXBkYXRlIG5nTW9kZWxSZWY6IFwiICsgdGhpcy5tb2RpZmllZFZhbHVlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gVXBkYXRlIHRoZSBtb2RlbCwgdGhlbiB0ZWxsIHRoZSBkaXJlY3RpdmUgdGhhdCBpdCBoYXMgYmVlbiB1cGRhdGVkLlxyXG4gICAgICB0aGlzLm5nTW9kZWxSZWYubW9kZWwgPSB0aGlzLm1vZGlmaWVkVmFsdWU7XHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi5uZ09uQ2hhbmdlcyh7XHJcbiAgICAgICAgbW9kZWw6IG5ldyBTaW1wbGVDaGFuZ2UodW5kZWZpbmVkLCB0aGlzLm1vZGlmaWVkVmFsdWUsIGZhbHNlKVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZ2lzdGVyIHRoZSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIHRoZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSB2YWx1ZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7KHZhbHVlOiBhbnkpID0+IHZvaWR9IGZuXHJcbiAgICovXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiByZWdpc3Rlck9uQ2hhbmdlXCIpO1xyXG4gICAgICBjb25zb2xlLmRlYnVnKGZuKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiBvbkNoYW5nZSBGdW5jdGlvblwiICsgdGhpcy52YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgZm4odGhpcy52YWx1ZSk7XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVnaXN0ZXIgdGhlIGZ1bmN0aW9uIGNhbGxlZCB0byB1cGRhdGUgdGhlIG1vZGVsIG9uIGJsdXIuXHJcbiAgICpcclxuICAgKiBAcGFyYW0geygpID0+IHZvaWR9IGZuXHJcbiAgICovXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiByZWdpc3Rlck9uVG91Y2hlZFwiKTtcclxuICAgICAgY29uc29sZS5kZWJ1Zyhmbik7XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRoZSBlZGl0TW9kZS4gIElmIHRydWUgdGhlbiB0ZWxsIHRoZSBwYXNzZWQgaW4gaW5wdXQgdG8gYmluZCB0aGUgY3VycmVudCBtb2RpZmllZCB2YWx1ZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gZWRpdE1vZGVcclxuICAgKi9cclxuICBzZXRFZGl0TW9kZShldmVudDogTW91c2VFdmVudCwgZWRpdE1vZGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIHRoaXMuZWRpdE1vZGUgPSBlZGl0TW9kZTtcclxuICAgIGlmICh0aGlzLmVkaXRNb2RlKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcblxyXG4gICAgICB0aGlzLm5nTW9kZWxSZWYubW9kZWwgPSB0aGlzLm1vZGlmaWVkVmFsdWU7XHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi5uZ09uQ2hhbmdlcyh7XHJcbiAgICAgICAgbW9kZWw6IG5ldyBTaW1wbGVDaGFuZ2UodW5kZWZpbmVkLCB0aGlzLm1vZGlmaWVkVmFsdWUsIGZhbHNlKVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbmNlbCBlZGl0IG1vZGUgd2hpY2ggcmVzZXRzIHRoZSBtb2RpZmllZCB2YWx1ZS5cclxuICAgKi9cclxuICBjYW5jZWwoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVkaXRNb2RlID0gZmFsc2U7XHJcbiAgICB0aGlzLm1vZGlmaWVkVmFsdWUgPSB0aGlzLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIHRoZSB2YWx1ZSB3aXRoIHRoZSBtb2RpZmllZCB2YWx1ZSBhbmQgY2FsbCB0aGUgb25DaGFuZ2UgZnVuY3Rpb24gc28gdHdvIHdheSBiaW5kaW5nIGlzIHVwZGF0ZWQgd2l0aCB0aGlzIGNvbXBvbmVudC5cclxuICAgKi9cclxuICBzYXZlKCk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IHNhdmUgbW9kaWZpZWRWYWx1ZTogXCIgKyB0aGlzLm1vZGlmaWVkVmFsdWUgKyBcIiwgdmFsdWU6IFwiICsgdGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy52YWx1ZSA9IHRoaXMubW9kaWZpZWRWYWx1ZTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLmVkaXRNb2RlID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUaGUgY29tcG9uZW50IHRvIHdyYXAgbXVzdCBiZSBuYW1lZCB3aXRoICNpbnB1dCBhbmQgaGF2ZSBhIG5nTW9kZWwgZGlyZWN0aXZlLiAgV2hlbiB0aGUgY29udGVudCBpcyBzZXQgaGVyZSwgd2VcclxuICAgKiByZWFkIHRoZSBuZ01vZGVsIGFuZCBzZXQgdGhlIG1vZGVsIGFzIHdlbGwgYXMgbGlzdGVuIHRvIGNoYW5nZXMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge05nTW9kZWx9IG5nTW9kZWxcclxuICAgKi9cclxuICBAQ29udGVudENoaWxkKFwiaW5wdXRcIiwge3JlYWQ6IE5nTW9kZWwsIHN0YXRpYzogZmFsc2V9KSBzZXQgY29udGVudENoaWxkKG5nTW9kZWw6IE5nTW9kZWwpIHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiBzZXQgY29udGVudENoaWxkOiBcIiArIHRoaXMubW9kaWZpZWRWYWx1ZSk7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcobmdNb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5uZ01vZGVsUmVmID0gbmdNb2RlbDtcclxuICAgIGlmICh0aGlzLm5nTW9kZWxSZWYpIHtcclxuICAgICAgdGhpcy5uZ01vZGVsUmVmLm1vZGVsID0gdGhpcy5tb2RpZmllZFZhbHVlO1xyXG4gICAgICB0aGlzLm5nTW9kZWxSZWYubmdPbkNoYW5nZXMoe1xyXG4gICAgICAgIG1vZGVsOiBuZXcgU2ltcGxlQ2hhbmdlKHVuZGVmaW5lZCwgdGhpcy5tb2RpZmllZFZhbHVlLCBmYWxzZSlcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi51cGRhdGUuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiBjbXB0IG1vZGVsIGNoYW5nZTogXCIgKyB2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubW9kaWZpZWRWYWx1ZSA9IHZhbHVlO1xyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSWYgdGhlIGNsaWNrIHRhcmdldCBpcyBvdXRzaWRlIHRoZSBpbmxpbmUgaW5wdXQgdGhlbiBjYW5jZWwgaXQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge01vdXNlRXZlbnR9IGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcihcImRvY3VtZW50OmNsaWNrXCIsIFtcIiRldmVudFwiXSlcclxuICBkb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5lZGl0TW9kZSkge1xyXG4gICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiBkb2N1bWVudENsaWNrXCIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsZXQgZTogRWxlbWVudCA9ICg8SFRNTEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5jbG9zZXN0KFwiaGNpLWlubGluZS1pbnB1dFwiKTtcclxuICAgICAgaWYgKCFlKSB7XHJcbiAgICAgICAgdGhpcy5zYXZlKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
228
|
+
`,
|
|
229
|
+
providers: [
|
|
230
|
+
{
|
|
231
|
+
provide: NG_VALUE_ACCESSOR,
|
|
232
|
+
useExisting: forwardRef(() => InlineComponent),
|
|
233
|
+
multi: true
|
|
234
|
+
}
|
|
235
|
+
]
|
|
236
|
+
}]
|
|
237
|
+
}], propDecorators: { renderTemplate: [{
|
|
238
|
+
type: ContentChild,
|
|
239
|
+
args: ["renderTemplate", { read: TemplateRef, static: true }]
|
|
240
|
+
}], noValueMessage: [{
|
|
241
|
+
type: Input
|
|
242
|
+
}], contentChild: [{
|
|
243
|
+
type: ContentChild,
|
|
244
|
+
args: ["input", { read: NgModel, static: false }]
|
|
245
|
+
}], documentClick: [{
|
|
246
|
+
type: HostListener,
|
|
247
|
+
args: ["document:click", ["$event"]]
|
|
248
|
+
}] } });
|
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0L3NyYy9pbmxpbmUvaW5saW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUNqRixXQUFXLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixpQkFBaUIsRUFBRSxPQUFPLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRWhGOzs7OztHQUtHO0FBK0NILE1BQU0sT0FBTyxlQUFlO0lBOUM1QjtRQWtEVyxtQkFBYyxHQUFXLGNBQWMsQ0FBQztRQUVqRCxhQUFhO1FBQ2IsYUFBUSxHQUFZLEtBQUssQ0FBQztLQWdLM0I7SUFqSkM7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNoQixPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7WUFDN0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBRUQsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUVoQyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDbEMsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixPQUFPLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM3RSxDQUFDO1lBRUQsc0VBQXNFO1lBQ3RFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFH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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQ1Q7OzJGQVNVLGVBQWU7a0JBOUMzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQ1Q7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGdCQUFnQixDQUFDOzRCQUM5QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRjs4QkFHb0UsY0FBYztzQkFBaEYsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQztnQkFFeEQsY0FBYztzQkFBdEIsS0FBSztnQkE0SHFELFlBQVk7c0JBQXRFLFlBQVk7dUJBQUMsT0FBTyxFQUFFLEVBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQTJCckQsYUFBYTtzQkFEWixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgaXNEZXZNb2RlLCBTaW1wbGVDaGFuZ2UsXHJcbiAgVGVtcGxhdGVSZWZcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiwgTmdNb2RlbH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vKipcclxuICogVGhpcyBjb21wb25lbnQgaXMgZGVzaWduZWQgdG8gdGFrZSBhbnkgaW5wdXQgYXMgbmctY29udGVudCBhbmQgd3JhcCBpdCBzdWNoIHRoYXQgaXQgcmVuZGVycyBhcyBhIHN0cmluZy4gIFdoZW4gaG92ZXJpbmdcclxuICogb3ZlciwgYSBib3JkZXIgYW5kIGVkaXQgaWNvbiBpcyBzaG93bi4gIFVwb24gY2xpY2tpbmcsIGl0IGVudGVycyBlZGl0IG1vZGUgYW5kIHRoZSBwYXNzZWQgaW4gaW5wdXQgaXMgcmVuZGVyZWQuICBUaGVcclxuICogYm91bmQgbmdNb2RlbCBpcyB3cmFwcGVkIGluIGFuIGludGVybWVkaWFyeS4gIFRoaXMgY29tcG9uZW50IGJpbmRzIGEgc2VwYXJhdGUgaW50ZXJuYWwgdmFsdWUgdG8gdGhlIHdyYXBwZWQgY29tcG9uZW50LlxyXG4gKiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBjYW5jZWwgb3V0IGFuZCBub3QgdXBkYXRlIHRoZSBuZ01vZGVsIGJvdW5kIHRvIHRoaXMgY29tcG9uZW50LlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiaGNpLWlubGluZS1pbnB1dFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2ICpuZ0lmPVwiIWVkaXRNb2RlOyBlbHNlIGVkaXRUZW1wbGF0ZVwiXHJcbiAgICAgICAgIChjbGljayk9XCJzZXRFZGl0TW9kZSgkZXZlbnQsIHRydWUpXCJcclxuICAgICAgICAgY2xhc3M9XCJlZGl0LWZhbHNlIHBsLTFcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJlbmRlclRlbXBsYXRlOyBlbHNlIGRlZmF1bHRSZW5kZXJUZW1wbGF0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJUZW1wbGF0ZTsgY29udGV4dDoge3ZhbHVlOiB2YWx1ZX1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFJlbmRlclRlbXBsYXRlPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAge3t2YWx1ZX19XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF2YWx1ZVwiPlxyXG4gICAgICAgICAge3tub1ZhbHVlTWVzc2FnZX19XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbWwtYXV0b1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBlbmNpbFwiPjwvaT5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2VkaXRUZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cImVkaXQtdHJ1ZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIj5cclxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ncmVlblwiIChjbGljayk9XCJzYXZlKClcIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hlY2tcIj48L2k+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXJlZCBkLWZsZXhcIiAoY2xpY2spPVwiY2FuY2VsKClcIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdGltZXMgbWwtYXV0byBtci1hdXRvXCI+PC9pPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICBgLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5saW5lQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmxpbmVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoXCJyZW5kZXJUZW1wbGF0ZVwiLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZX0pIHJlbmRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKSBub1ZhbHVlTWVzc2FnZTogc3RyaW5nID0gXCJDbGljayB0byBBZGRcIjtcclxuXHJcbiAgLy8gVmlldyBzdGF0ZVxyXG4gIGVkaXRNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8vIFZhbHVlIHRoYXQgdXBkYXRlcyBiYXNlZCBvbiB0aGlzIG5nTW9kZWwuXHJcbiAgdmFsdWU6IGFueTtcclxuXHJcbiAgLy8gVGhlIHZhbHVlIHdlIGJpbmQgdG8gdGhlIHBhc3NlZCBpbiBpbnB1dCBjb21wb25lbnQuXHJcbiAgbW9kaWZpZWRWYWx1ZTogYW55O1xyXG5cclxuICAvLyBTdG9yZSB0aGUgbmdNb2RlbCBkaXJlY3RpdmUgb24gdGhlIHBhc3NlZCBpbiBpbnB1dCBjb21wb25lbnQuXHJcbiAgbmdNb2RlbFJlZjogTmdNb2RlbDtcclxuXHJcbiAgLy8gRnVuY3Rpb25zIHRvIHJlZ2lzdGVyIGZyb20gQW5ndWxhclxyXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZDtcclxuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxlZCB3aGVuIHRoZSBtb2RlbCB1cGRhdGVzIGFuZCB3ZSBuZWVkIHRvIHVwIHRoZSB2aWV3LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHZhbHVlXHJcbiAgICovXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIklubGluZUNvbXBvbmVudDogd3JpdGVWYWx1ZVwiKTtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIklubGluZUNvbXBvbmVudDogXCIgKyB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVXBkYXRlIHRoZSBpbnRlcm5hbCB2YWx1ZXMuXHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm1vZGlmaWVkVmFsdWUgPSB0aGlzLnZhbHVlO1xyXG5cclxuICAgIGlmICh0aGlzLm5nTW9kZWxSZWYgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICBjb25zb2xlLmRlYnVnKFwiSW5saW5lQ29tcG9uZW50OiB1cGRhdGUgbmdNb2RlbFJlZjogXCIgKyB0aGlzLm1vZGlmaWVkVmFsdWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBVcGRhdGUgdGhlIG1vZGVsLCB0aGVuIHRlbGwgdGhlIGRpcmVjdGl2ZSB0aGF0IGl0IGhhcyBiZWVuIHVwZGF0ZWQuXHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi5tb2RlbCA9IHRoaXMubW9kaWZpZWRWYWx1ZTtcclxuICAgICAgdGhpcy5uZ01vZGVsUmVmLm5nT25DaGFuZ2VzKHtcclxuICAgICAgICBtb2RlbDogbmV3IFNpbXBsZUNoYW5nZSh1bmRlZmluZWQsIHRoaXMubW9kaWZpZWRWYWx1ZSwgZmFsc2UpXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVnaXN0ZXIgdGhlIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMgaW4gdGhlIHZhbHVlLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHsodmFsdWU6IGFueSkgPT4gdm9pZH0gZm5cclxuICAgKi9cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IHJlZ2lzdGVyT25DaGFuZ2VcIik7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoZm4pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub25DaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IG9uQ2hhbmdlIEZ1bmN0aW9uXCIgKyB0aGlzLnZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgICBmbih0aGlzLnZhbHVlKTtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZWdpc3RlciB0aGUgZnVuY3Rpb24gY2FsbGVkIHRvIHVwZGF0ZSB0aGUgbW9kZWwgb24gYmx1ci5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gZm5cclxuICAgKi9cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IHJlZ2lzdGVyT25Ub3VjaGVkXCIpO1xyXG4gICAgICBjb25zb2xlLmRlYnVnKGZuKTtcclxuICAgIH1cclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdGhlIGVkaXRNb2RlLiAgSWYgdHJ1ZSB0aGVuIHRlbGwgdGhlIHBhc3NlZCBpbiBpbnB1dCB0byBiaW5kIHRoZSBjdXJyZW50IG1vZGlmaWVkIHZhbHVlLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtib29sZWFufSBlZGl0TW9kZVxyXG4gICAqL1xyXG4gIHNldEVkaXRNb2RlKGV2ZW50OiBNb3VzZUV2ZW50LCBlZGl0TW9kZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgdGhpcy5lZGl0TW9kZSA9IGVkaXRNb2RlO1xyXG4gICAgaWYgKHRoaXMuZWRpdE1vZGUpIHtcclxuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcclxuXHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi5tb2RlbCA9IHRoaXMubW9kaWZpZWRWYWx1ZTtcclxuICAgICAgdGhpcy5uZ01vZGVsUmVmLm5nT25DaGFuZ2VzKHtcclxuICAgICAgICBtb2RlbDogbmV3IFNpbXBsZUNoYW5nZSh1bmRlZmluZWQsIHRoaXMubW9kaWZpZWRWYWx1ZSwgZmFsc2UpXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FuY2VsIGVkaXQgbW9kZSB3aGljaCByZXNldHMgdGhlIG1vZGlmaWVkIHZhbHVlLlxyXG4gICAqL1xyXG4gIGNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcclxuICAgIHRoaXMubW9kaWZpZWRWYWx1ZSA9IHRoaXMudmFsdWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGUgdGhlIHZhbHVlIHdpdGggdGhlIG1vZGlmaWVkIHZhbHVlIGFuZCBjYWxsIHRoZSBvbkNoYW5nZSBmdW5jdGlvbiBzbyB0d28gd2F5IGJpbmRpbmcgaXMgdXBkYXRlZCB3aXRoIHRoaXMgY29tcG9uZW50LlxyXG4gICAqL1xyXG4gIHNhdmUoKTogdm9pZCB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhcIklubGluZUNvbXBvbmVudDogc2F2ZSBtb2RpZmllZFZhbHVlOiBcIiArIHRoaXMubW9kaWZpZWRWYWx1ZSArIFwiLCB2YWx1ZTogXCIgKyB0aGlzLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5tb2RpZmllZFZhbHVlO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBjb21wb25lbnQgdG8gd3JhcCBtdXN0IGJlIG5hbWVkIHdpdGggI2lucHV0IGFuZCBoYXZlIGEgbmdNb2RlbCBkaXJlY3RpdmUuICBXaGVuIHRoZSBjb250ZW50IGlzIHNldCBoZXJlLCB3ZVxyXG4gICAqIHJlYWQgdGhlIG5nTW9kZWwgYW5kIHNldCB0aGUgbW9kZWwgYXMgd2VsbCBhcyBsaXN0ZW4gdG8gY2hhbmdlcy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7TmdNb2RlbH0gbmdNb2RlbFxyXG4gICAqL1xyXG4gIEBDb250ZW50Q2hpbGQoXCJpbnB1dFwiLCB7cmVhZDogTmdNb2RlbCwgc3RhdGljOiBmYWxzZX0pIHNldCBjb250ZW50Q2hpbGQobmdNb2RlbDogTmdNb2RlbCkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IHNldCBjb250ZW50Q2hpbGQ6IFwiICsgdGhpcy5tb2RpZmllZFZhbHVlKTtcclxuICAgICAgY29uc29sZS5kZWJ1ZyhuZ01vZGVsKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5nTW9kZWxSZWYgPSBuZ01vZGVsO1xyXG4gICAgaWYgKHRoaXMubmdNb2RlbFJlZikge1xyXG4gICAgICB0aGlzLm5nTW9kZWxSZWYubW9kZWwgPSB0aGlzLm1vZGlmaWVkVmFsdWU7XHJcbiAgICAgIHRoaXMubmdNb2RlbFJlZi5uZ09uQ2hhbmdlcyh7XHJcbiAgICAgICAgbW9kZWw6IG5ldyBTaW1wbGVDaGFuZ2UodW5kZWZpbmVkLCB0aGlzLm1vZGlmaWVkVmFsdWUsIGZhbHNlKVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5uZ01vZGVsUmVmLnVwZGF0ZS5zdWJzY3JpYmUoKHZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcclxuICAgICAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IGNtcHQgbW9kZWwgY2hhbmdlOiBcIiArIHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tb2RpZmllZFZhbHVlID0gdmFsdWU7XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJZiB0aGUgY2xpY2sgdGFyZ2V0IGlzIG91dHNpZGUgdGhlIGlubGluZSBpbnB1dCB0aGVuIGNhbmNlbCBpdC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7TW91c2VFdmVudH0gZXZlbnRcclxuICAgKi9cclxuICBASG9zdExpc3RlbmVyKFwiZG9jdW1lbnQ6Y2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIGRvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmVkaXRNb2RlKSB7XHJcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgIGNvbnNvbGUuZGVidWcoXCJJbmxpbmVDb21wb25lbnQ6IGRvY3VtZW50Q2xpY2tcIik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxldCBlOiBFbGVtZW50ID0gKDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLmNsb3Nlc3QoXCJoY2ktaW5saW5lLWlucHV0XCIpO1xyXG4gICAgICBpZiAoIWUpIHtcclxuICAgICAgICB0aGlzLnNhdmUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { CommonModule } from "@angular/common";
|
|
3
|
-
import { FormsModule } from "@angular/forms";
|
|
4
|
-
import { InlineComponent } from "./inline.component";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class InlineModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
9
|
-
FormsModule], exports: [InlineComponent] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
11
|
-
FormsModule] }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
14
|
-
type: NgModule,
|
|
15
|
-
args: [{
|
|
16
|
-
imports: [
|
|
17
|
-
CommonModule,
|
|
18
|
-
FormsModule
|
|
19
|
-
],
|
|
20
|
-
declarations: [
|
|
21
|
-
InlineComponent
|
|
22
|
-
],
|
|
23
|
-
exports: [
|
|
24
|
-
InlineComponent
|
|
25
|
-
]
|
|
26
|
-
}]
|
|
27
|
-
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { FormsModule } from "@angular/forms";
|
|
4
|
+
import { InlineComponent } from "./inline.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class InlineModule {
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InlineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: InlineModule, declarations: [InlineComponent], imports: [CommonModule,
|
|
9
|
+
FormsModule], exports: [InlineComponent] }); }
|
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InlineModule, imports: [CommonModule,
|
|
11
|
+
FormsModule] }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InlineModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
imports: [
|
|
17
|
+
CommonModule,
|
|
18
|
+
FormsModule
|
|
19
|
+
],
|
|
20
|
+
declarations: [
|
|
21
|
+
InlineComponent
|
|
22
|
+
],
|
|
23
|
+
exports: [
|
|
24
|
+
InlineComponent
|
|
25
|
+
]
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0L3NyYy9pbmxpbmUvaW5saW5lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9CQUFvQixDQUFDOztBQWNuRCxNQUFNLE9BQU8sWUFBWTs4R0FBWixZQUFZOytHQUFaLFlBQVksaUJBTnJCLGVBQWUsYUFKZixZQUFZO1lBQ1osV0FBVyxhQU1YLGVBQWU7K0dBR04sWUFBWSxZQVZyQixZQUFZO1lBQ1osV0FBVzs7MkZBU0YsWUFBWTtrQkFaeEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3FCQUNaO29CQUNELFlBQVksRUFBRTt3QkFDWixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmltcG9ydCB7SW5saW5lQ29tcG9uZW50fSBmcm9tIFwiLi9pbmxpbmUuY29tcG9uZW50XCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIElubGluZUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgSW5saW5lQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5saW5lTW9kdWxlIHt9XHJcbiJdfQ==
|