@dytesdk/angular-ui-kit 3.0.8-staging.1 → 3.0.8-staging.2
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/dytesdk-angular-ui-kit.d.ts +5 -0
- package/esm2020/dytesdk-angular-ui-kit.mjs +5 -0
- package/esm2020/lib/components.module.mjs +31 -0
- package/esm2020/lib/stencil-generated/angular-component-lib/utils.mjs +59 -0
- package/esm2020/lib/stencil-generated/components.mjs +3538 -0
- package/esm2020/lib/stencil-generated/index.mjs +142 -0
- package/esm2020/public-api.mjs +8 -0
- package/fesm2015/dytesdk-angular-ui-kit.mjs +3635 -0
- package/fesm2015/dytesdk-angular-ui-kit.mjs.map +1 -0
- package/fesm2020/dytesdk-angular-ui-kit.mjs +3635 -0
- package/fesm2020/dytesdk-angular-ui-kit.mjs.map +1 -0
- package/lib/components.module.d.ts +7 -0
- package/lib/stencil-generated/angular-component-lib/utils.d.ts +9 -0
- package/lib/stencil-generated/components.d.ts +1786 -0
- package/lib/stencil-generated/index.d.ts +2 -0
- package/package.json +3 -2
- package/public-api.d.ts +4 -0
|
@@ -0,0 +1,3538 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated angular directive proxies */
|
|
4
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
5
|
+
import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
let DyteAi = class DyteAi {
|
|
8
|
+
constructor(c, r, z) {
|
|
9
|
+
this.z = z;
|
|
10
|
+
c.detach();
|
|
11
|
+
this.el = r.nativeElement;
|
|
12
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
DyteAi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
DyteAi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAi, selector: "dyte-ai", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
17
|
+
DyteAi = __decorate([
|
|
18
|
+
ProxyCmp({
|
|
19
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'view']
|
|
20
|
+
})
|
|
21
|
+
], DyteAi);
|
|
22
|
+
export { DyteAi };
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAi, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{
|
|
26
|
+
selector: 'dyte-ai',
|
|
27
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
28
|
+
template: '<ng-content></ng-content>',
|
|
29
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
30
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'view'],
|
|
31
|
+
}]
|
|
32
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
33
|
+
let DyteAiToggle = class DyteAiToggle {
|
|
34
|
+
constructor(c, r, z) {
|
|
35
|
+
this.z = z;
|
|
36
|
+
c.detach();
|
|
37
|
+
this.el = r.nativeElement;
|
|
38
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
DyteAiToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAiToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
42
|
+
DyteAiToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAiToggle, selector: "dyte-ai-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
43
|
+
DyteAiToggle = __decorate([
|
|
44
|
+
ProxyCmp({
|
|
45
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
46
|
+
})
|
|
47
|
+
], DyteAiToggle);
|
|
48
|
+
export { DyteAiToggle };
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAiToggle, decorators: [{
|
|
50
|
+
type: Component,
|
|
51
|
+
args: [{
|
|
52
|
+
selector: 'dyte-ai-toggle',
|
|
53
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
54
|
+
template: '<ng-content></ng-content>',
|
|
55
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
56
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
59
|
+
let DyteAiTranscriptions = class DyteAiTranscriptions {
|
|
60
|
+
constructor(c, r, z) {
|
|
61
|
+
this.z = z;
|
|
62
|
+
c.detach();
|
|
63
|
+
this.el = r.nativeElement;
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
DyteAiTranscriptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAiTranscriptions, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
+
DyteAiTranscriptions.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAiTranscriptions, selector: "dyte-ai-transcriptions", inputs: { initialTranscriptions: "initialTranscriptions", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
68
|
+
DyteAiTranscriptions = __decorate([
|
|
69
|
+
ProxyCmp({
|
|
70
|
+
inputs: ['initialTranscriptions', 'meeting', 't']
|
|
71
|
+
})
|
|
72
|
+
], DyteAiTranscriptions);
|
|
73
|
+
export { DyteAiTranscriptions };
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAiTranscriptions, decorators: [{
|
|
75
|
+
type: Component,
|
|
76
|
+
args: [{
|
|
77
|
+
selector: 'dyte-ai-transcriptions',
|
|
78
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
79
|
+
template: '<ng-content></ng-content>',
|
|
80
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
81
|
+
inputs: ['initialTranscriptions', 'meeting', 't'],
|
|
82
|
+
}]
|
|
83
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
84
|
+
let DyteAudioGrid = class DyteAudioGrid {
|
|
85
|
+
constructor(c, r, z) {
|
|
86
|
+
this.z = z;
|
|
87
|
+
c.detach();
|
|
88
|
+
this.el = r.nativeElement;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
DyteAudioGrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
+
DyteAudioGrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAudioGrid, selector: "dyte-audio-grid", inputs: { config: "config", hideSelf: "hideSelf", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
93
|
+
DyteAudioGrid = __decorate([
|
|
94
|
+
ProxyCmp({
|
|
95
|
+
inputs: ['config', 'hideSelf', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
96
|
+
})
|
|
97
|
+
], DyteAudioGrid);
|
|
98
|
+
export { DyteAudioGrid };
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioGrid, decorators: [{
|
|
100
|
+
type: Component,
|
|
101
|
+
args: [{
|
|
102
|
+
selector: 'dyte-audio-grid',
|
|
103
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
104
|
+
template: '<ng-content></ng-content>',
|
|
105
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
106
|
+
inputs: ['config', 'hideSelf', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
107
|
+
}]
|
|
108
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
109
|
+
let DyteAudioTile = class DyteAudioTile {
|
|
110
|
+
constructor(c, r, z) {
|
|
111
|
+
this.z = z;
|
|
112
|
+
c.detach();
|
|
113
|
+
this.el = r.nativeElement;
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
DyteAudioTile.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioTile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
117
|
+
DyteAudioTile.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAudioTile, selector: "dyte-audio-tile", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", participant: "participant", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
118
|
+
DyteAudioTile = __decorate([
|
|
119
|
+
ProxyCmp({
|
|
120
|
+
inputs: ['config', 'iconPack', 'meeting', 'participant', 'size', 'states', 't']
|
|
121
|
+
})
|
|
122
|
+
], DyteAudioTile);
|
|
123
|
+
export { DyteAudioTile };
|
|
124
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioTile, decorators: [{
|
|
125
|
+
type: Component,
|
|
126
|
+
args: [{
|
|
127
|
+
selector: 'dyte-audio-tile',
|
|
128
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
129
|
+
template: '<ng-content></ng-content>',
|
|
130
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
131
|
+
inputs: ['config', 'iconPack', 'meeting', 'participant', 'size', 'states', 't'],
|
|
132
|
+
}]
|
|
133
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
134
|
+
let DyteAudioVisualizer = class DyteAudioVisualizer {
|
|
135
|
+
constructor(c, r, z) {
|
|
136
|
+
this.z = z;
|
|
137
|
+
c.detach();
|
|
138
|
+
this.el = r.nativeElement;
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
DyteAudioVisualizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioVisualizer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
142
|
+
DyteAudioVisualizer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAudioVisualizer, selector: "dyte-audio-visualizer", inputs: { hideMuted: "hideMuted", iconPack: "iconPack", isScreenShare: "isScreenShare", participant: "participant", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
143
|
+
DyteAudioVisualizer = __decorate([
|
|
144
|
+
ProxyCmp({
|
|
145
|
+
inputs: ['hideMuted', 'iconPack', 'isScreenShare', 'participant', 'size', 't', 'variant']
|
|
146
|
+
})
|
|
147
|
+
], DyteAudioVisualizer);
|
|
148
|
+
export { DyteAudioVisualizer };
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAudioVisualizer, decorators: [{
|
|
150
|
+
type: Component,
|
|
151
|
+
args: [{
|
|
152
|
+
selector: 'dyte-audio-visualizer',
|
|
153
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
154
|
+
template: '<ng-content></ng-content>',
|
|
155
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
156
|
+
inputs: ['hideMuted', 'iconPack', 'isScreenShare', 'participant', 'size', 't', 'variant'],
|
|
157
|
+
}]
|
|
158
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
159
|
+
let DyteAvatar = class DyteAvatar {
|
|
160
|
+
constructor(c, r, z) {
|
|
161
|
+
this.z = z;
|
|
162
|
+
c.detach();
|
|
163
|
+
this.el = r.nativeElement;
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
DyteAvatar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAvatar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
167
|
+
DyteAvatar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteAvatar, selector: "dyte-avatar", inputs: { iconPack: "iconPack", participant: "participant", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
168
|
+
DyteAvatar = __decorate([
|
|
169
|
+
ProxyCmp({
|
|
170
|
+
inputs: ['iconPack', 'participant', 'size', 't', 'variant']
|
|
171
|
+
})
|
|
172
|
+
], DyteAvatar);
|
|
173
|
+
export { DyteAvatar };
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteAvatar, decorators: [{
|
|
175
|
+
type: Component,
|
|
176
|
+
args: [{
|
|
177
|
+
selector: 'dyte-avatar',
|
|
178
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
179
|
+
template: '<ng-content></ng-content>',
|
|
180
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
181
|
+
inputs: ['iconPack', 'participant', 'size', 't', 'variant'],
|
|
182
|
+
}]
|
|
183
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
184
|
+
let DyteBreakoutRoomManager = class DyteBreakoutRoomManager {
|
|
185
|
+
constructor(c, r, z) {
|
|
186
|
+
this.z = z;
|
|
187
|
+
c.detach();
|
|
188
|
+
this.el = r.nativeElement;
|
|
189
|
+
proxyOutputs(this, this.el, ['participantsAdd', 'participantDelete', 'roomJoin', 'delete', 'update']);
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
DyteBreakoutRoomManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomManager, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
+
DyteBreakoutRoomManager.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteBreakoutRoomManager, selector: "dyte-breakout-room-manager", inputs: { allowDelete: "allowDelete", assigningParticipants: "assigningParticipants", defaultExpanded: "defaultExpanded", iconPack: "iconPack", isDragMode: "isDragMode", meeting: "meeting", mode: "mode", room: "room", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
194
|
+
DyteBreakoutRoomManager = __decorate([
|
|
195
|
+
ProxyCmp({
|
|
196
|
+
inputs: ['allowDelete', 'assigningParticipants', 'defaultExpanded', 'iconPack', 'isDragMode', 'meeting', 'mode', 'room', 'states', 't']
|
|
197
|
+
})
|
|
198
|
+
], DyteBreakoutRoomManager);
|
|
199
|
+
export { DyteBreakoutRoomManager };
|
|
200
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomManager, decorators: [{
|
|
201
|
+
type: Component,
|
|
202
|
+
args: [{
|
|
203
|
+
selector: 'dyte-breakout-room-manager',
|
|
204
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
205
|
+
template: '<ng-content></ng-content>',
|
|
206
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
207
|
+
inputs: ['allowDelete', 'assigningParticipants', 'defaultExpanded', 'iconPack', 'isDragMode', 'meeting', 'mode', 'room', 'states', 't'],
|
|
208
|
+
}]
|
|
209
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
210
|
+
let DyteBreakoutRoomParticipants = class DyteBreakoutRoomParticipants {
|
|
211
|
+
constructor(c, r, z) {
|
|
212
|
+
this.z = z;
|
|
213
|
+
c.detach();
|
|
214
|
+
this.el = r.nativeElement;
|
|
215
|
+
proxyOutputs(this, this.el, ['selectedParticipantsUpdate', 'allParticipantsToggleUpdate', 'participantsDragging']);
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
DyteBreakoutRoomParticipants.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomParticipants, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
219
|
+
DyteBreakoutRoomParticipants.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteBreakoutRoomParticipants, selector: "dyte-breakout-room-participants", inputs: { iconPack: "iconPack", meeting: "meeting", participantIds: "participantIds", selectedParticipantIds: "selectedParticipantIds", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
220
|
+
DyteBreakoutRoomParticipants = __decorate([
|
|
221
|
+
ProxyCmp({
|
|
222
|
+
inputs: ['iconPack', 'meeting', 'participantIds', 'selectedParticipantIds', 't']
|
|
223
|
+
})
|
|
224
|
+
], DyteBreakoutRoomParticipants);
|
|
225
|
+
export { DyteBreakoutRoomParticipants };
|
|
226
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomParticipants, decorators: [{
|
|
227
|
+
type: Component,
|
|
228
|
+
args: [{
|
|
229
|
+
selector: 'dyte-breakout-room-participants',
|
|
230
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
231
|
+
template: '<ng-content></ng-content>',
|
|
232
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
233
|
+
inputs: ['iconPack', 'meeting', 'participantIds', 'selectedParticipantIds', 't'],
|
|
234
|
+
}]
|
|
235
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
236
|
+
let DyteBreakoutRoomsManager = class DyteBreakoutRoomsManager {
|
|
237
|
+
constructor(c, r, z) {
|
|
238
|
+
this.z = z;
|
|
239
|
+
c.detach();
|
|
240
|
+
this.el = r.nativeElement;
|
|
241
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
DyteBreakoutRoomsManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomsManager, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
245
|
+
DyteBreakoutRoomsManager.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteBreakoutRoomsManager, selector: "dyte-breakout-rooms-manager", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
246
|
+
DyteBreakoutRoomsManager = __decorate([
|
|
247
|
+
ProxyCmp({
|
|
248
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
249
|
+
})
|
|
250
|
+
], DyteBreakoutRoomsManager);
|
|
251
|
+
export { DyteBreakoutRoomsManager };
|
|
252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomsManager, decorators: [{
|
|
253
|
+
type: Component,
|
|
254
|
+
args: [{
|
|
255
|
+
selector: 'dyte-breakout-rooms-manager',
|
|
256
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
257
|
+
template: '<ng-content></ng-content>',
|
|
258
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
259
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
260
|
+
}]
|
|
261
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
262
|
+
let DyteBreakoutRoomsToggle = class DyteBreakoutRoomsToggle {
|
|
263
|
+
constructor(c, r, z) {
|
|
264
|
+
this.z = z;
|
|
265
|
+
c.detach();
|
|
266
|
+
this.el = r.nativeElement;
|
|
267
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
268
|
+
}
|
|
269
|
+
};
|
|
270
|
+
DyteBreakoutRoomsToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomsToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
271
|
+
DyteBreakoutRoomsToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteBreakoutRoomsToggle, selector: "dyte-breakout-rooms-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
272
|
+
DyteBreakoutRoomsToggle = __decorate([
|
|
273
|
+
ProxyCmp({
|
|
274
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
275
|
+
})
|
|
276
|
+
], DyteBreakoutRoomsToggle);
|
|
277
|
+
export { DyteBreakoutRoomsToggle };
|
|
278
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBreakoutRoomsToggle, decorators: [{
|
|
279
|
+
type: Component,
|
|
280
|
+
args: [{
|
|
281
|
+
selector: 'dyte-breakout-rooms-toggle',
|
|
282
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
283
|
+
template: '<ng-content></ng-content>',
|
|
284
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
285
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
286
|
+
}]
|
|
287
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
288
|
+
let DyteBroadcastMessageModal = class DyteBroadcastMessageModal {
|
|
289
|
+
constructor(c, r, z) {
|
|
290
|
+
this.z = z;
|
|
291
|
+
c.detach();
|
|
292
|
+
this.el = r.nativeElement;
|
|
293
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
294
|
+
}
|
|
295
|
+
};
|
|
296
|
+
DyteBroadcastMessageModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBroadcastMessageModal, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
297
|
+
DyteBroadcastMessageModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteBroadcastMessageModal, selector: "dyte-broadcast-message-modal", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
298
|
+
DyteBroadcastMessageModal = __decorate([
|
|
299
|
+
ProxyCmp({
|
|
300
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
301
|
+
})
|
|
302
|
+
], DyteBroadcastMessageModal);
|
|
303
|
+
export { DyteBroadcastMessageModal };
|
|
304
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteBroadcastMessageModal, decorators: [{
|
|
305
|
+
type: Component,
|
|
306
|
+
args: [{
|
|
307
|
+
selector: 'dyte-broadcast-message-modal',
|
|
308
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
309
|
+
template: '<ng-content></ng-content>',
|
|
310
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
311
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
312
|
+
}]
|
|
313
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
314
|
+
let DyteButton = class DyteButton {
|
|
315
|
+
constructor(c, r, z) {
|
|
316
|
+
this.z = z;
|
|
317
|
+
c.detach();
|
|
318
|
+
this.el = r.nativeElement;
|
|
319
|
+
}
|
|
320
|
+
};
|
|
321
|
+
DyteButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
322
|
+
DyteButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteButton, selector: "dyte-button", inputs: { disabled: "disabled", kind: "kind", reverse: "reverse", size: "size", type: "type", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
323
|
+
DyteButton = __decorate([
|
|
324
|
+
ProxyCmp({
|
|
325
|
+
inputs: ['disabled', 'kind', 'reverse', 'size', 'type', 'variant']
|
|
326
|
+
})
|
|
327
|
+
], DyteButton);
|
|
328
|
+
export { DyteButton };
|
|
329
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteButton, decorators: [{
|
|
330
|
+
type: Component,
|
|
331
|
+
args: [{
|
|
332
|
+
selector: 'dyte-button',
|
|
333
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
334
|
+
template: '<ng-content></ng-content>',
|
|
335
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
336
|
+
inputs: ['disabled', 'kind', 'reverse', 'size', 'type', 'variant'],
|
|
337
|
+
}]
|
|
338
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
339
|
+
let DyteCameraSelector = class DyteCameraSelector {
|
|
340
|
+
constructor(c, r, z) {
|
|
341
|
+
this.z = z;
|
|
342
|
+
c.detach();
|
|
343
|
+
this.el = r.nativeElement;
|
|
344
|
+
}
|
|
345
|
+
};
|
|
346
|
+
DyteCameraSelector.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCameraSelector, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
347
|
+
DyteCameraSelector.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteCameraSelector, selector: "dyte-camera-selector", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
348
|
+
DyteCameraSelector = __decorate([
|
|
349
|
+
ProxyCmp({
|
|
350
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
351
|
+
})
|
|
352
|
+
], DyteCameraSelector);
|
|
353
|
+
export { DyteCameraSelector };
|
|
354
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCameraSelector, decorators: [{
|
|
355
|
+
type: Component,
|
|
356
|
+
args: [{
|
|
357
|
+
selector: 'dyte-camera-selector',
|
|
358
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
359
|
+
template: '<ng-content></ng-content>',
|
|
360
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
361
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
362
|
+
}]
|
|
363
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
364
|
+
let DyteCameraToggle = class DyteCameraToggle {
|
|
365
|
+
constructor(c, r, z) {
|
|
366
|
+
this.z = z;
|
|
367
|
+
c.detach();
|
|
368
|
+
this.el = r.nativeElement;
|
|
369
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
370
|
+
}
|
|
371
|
+
};
|
|
372
|
+
DyteCameraToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCameraToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
373
|
+
DyteCameraToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteCameraToggle, selector: "dyte-camera-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
374
|
+
DyteCameraToggle = __decorate([
|
|
375
|
+
ProxyCmp({
|
|
376
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
377
|
+
})
|
|
378
|
+
], DyteCameraToggle);
|
|
379
|
+
export { DyteCameraToggle };
|
|
380
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCameraToggle, decorators: [{
|
|
381
|
+
type: Component,
|
|
382
|
+
args: [{
|
|
383
|
+
selector: 'dyte-camera-toggle',
|
|
384
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
385
|
+
template: '<ng-content></ng-content>',
|
|
386
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
387
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
388
|
+
}]
|
|
389
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
390
|
+
let DyteCaptionToggle = class DyteCaptionToggle {
|
|
391
|
+
constructor(c, r, z) {
|
|
392
|
+
this.z = z;
|
|
393
|
+
c.detach();
|
|
394
|
+
this.el = r.nativeElement;
|
|
395
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
396
|
+
}
|
|
397
|
+
};
|
|
398
|
+
DyteCaptionToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCaptionToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
399
|
+
DyteCaptionToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteCaptionToggle, selector: "dyte-caption-toggle", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
400
|
+
DyteCaptionToggle = __decorate([
|
|
401
|
+
ProxyCmp({
|
|
402
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
403
|
+
})
|
|
404
|
+
], DyteCaptionToggle);
|
|
405
|
+
export { DyteCaptionToggle };
|
|
406
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCaptionToggle, decorators: [{
|
|
407
|
+
type: Component,
|
|
408
|
+
args: [{
|
|
409
|
+
selector: 'dyte-caption-toggle',
|
|
410
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
411
|
+
template: '<ng-content></ng-content>',
|
|
412
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
413
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
414
|
+
}]
|
|
415
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
416
|
+
let DyteChannelCreator = class DyteChannelCreator {
|
|
417
|
+
constructor(c, r, z) {
|
|
418
|
+
this.z = z;
|
|
419
|
+
c.detach();
|
|
420
|
+
this.el = r.nativeElement;
|
|
421
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate', 'switchChannel']);
|
|
422
|
+
}
|
|
423
|
+
};
|
|
424
|
+
DyteChannelCreator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelCreator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
425
|
+
DyteChannelCreator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChannelCreator, selector: "dyte-channel-creator", inputs: { iconPack: "iconPack", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
426
|
+
DyteChannelCreator = __decorate([
|
|
427
|
+
ProxyCmp({
|
|
428
|
+
inputs: ['iconPack', 'meeting', 't']
|
|
429
|
+
})
|
|
430
|
+
], DyteChannelCreator);
|
|
431
|
+
export { DyteChannelCreator };
|
|
432
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelCreator, decorators: [{
|
|
433
|
+
type: Component,
|
|
434
|
+
args: [{
|
|
435
|
+
selector: 'dyte-channel-creator',
|
|
436
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
437
|
+
template: '<ng-content></ng-content>',
|
|
438
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
439
|
+
inputs: ['iconPack', 'meeting', 't'],
|
|
440
|
+
}]
|
|
441
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
442
|
+
let DyteChannelDetails = class DyteChannelDetails {
|
|
443
|
+
constructor(c, r, z) {
|
|
444
|
+
this.z = z;
|
|
445
|
+
c.detach();
|
|
446
|
+
this.el = r.nativeElement;
|
|
447
|
+
}
|
|
448
|
+
};
|
|
449
|
+
DyteChannelDetails.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelDetails, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
450
|
+
DyteChannelDetails.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChannelDetails, selector: "dyte-channel-details", inputs: { channel: "channel", iconPack: "iconPack", members: "members", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
451
|
+
DyteChannelDetails = __decorate([
|
|
452
|
+
ProxyCmp({
|
|
453
|
+
inputs: ['channel', 'iconPack', 'members', 't']
|
|
454
|
+
})
|
|
455
|
+
], DyteChannelDetails);
|
|
456
|
+
export { DyteChannelDetails };
|
|
457
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelDetails, decorators: [{
|
|
458
|
+
type: Component,
|
|
459
|
+
args: [{
|
|
460
|
+
selector: 'dyte-channel-details',
|
|
461
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
462
|
+
template: '<ng-content></ng-content>',
|
|
463
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
464
|
+
inputs: ['channel', 'iconPack', 'members', 't'],
|
|
465
|
+
}]
|
|
466
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
467
|
+
let DyteChannelHeader = class DyteChannelHeader {
|
|
468
|
+
constructor(c, r, z) {
|
|
469
|
+
this.z = z;
|
|
470
|
+
c.detach();
|
|
471
|
+
this.el = r.nativeElement;
|
|
472
|
+
proxyOutputs(this, this.el, ['search', 'searchDismissed', 'back']);
|
|
473
|
+
}
|
|
474
|
+
};
|
|
475
|
+
DyteChannelHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
476
|
+
DyteChannelHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChannelHeader, selector: "dyte-channel-header", inputs: { channel: "channel", iconPack: "iconPack", meeting: "meeting", showBackButton: "showBackButton", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
477
|
+
DyteChannelHeader = __decorate([
|
|
478
|
+
ProxyCmp({
|
|
479
|
+
inputs: ['channel', 'iconPack', 'meeting', 'showBackButton', 't']
|
|
480
|
+
})
|
|
481
|
+
], DyteChannelHeader);
|
|
482
|
+
export { DyteChannelHeader };
|
|
483
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelHeader, decorators: [{
|
|
484
|
+
type: Component,
|
|
485
|
+
args: [{
|
|
486
|
+
selector: 'dyte-channel-header',
|
|
487
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
488
|
+
template: '<ng-content></ng-content>',
|
|
489
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
490
|
+
inputs: ['channel', 'iconPack', 'meeting', 'showBackButton', 't'],
|
|
491
|
+
}]
|
|
492
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
493
|
+
let DyteChannelSelectorUi = class DyteChannelSelectorUi {
|
|
494
|
+
constructor(c, r, z) {
|
|
495
|
+
this.z = z;
|
|
496
|
+
c.detach();
|
|
497
|
+
this.el = r.nativeElement;
|
|
498
|
+
proxyOutputs(this, this.el, ['channelChanged']);
|
|
499
|
+
}
|
|
500
|
+
};
|
|
501
|
+
DyteChannelSelectorUi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelSelectorUi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
502
|
+
DyteChannelSelectorUi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChannelSelectorUi, selector: "dyte-channel-selector-ui", inputs: { channels: "channels", iconPack: "iconPack", selectedChannelId: "selectedChannelId", showRecentMessage: "showRecentMessage", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
503
|
+
DyteChannelSelectorUi = __decorate([
|
|
504
|
+
ProxyCmp({
|
|
505
|
+
inputs: ['channels', 'iconPack', 'selectedChannelId', 'showRecentMessage', 't']
|
|
506
|
+
})
|
|
507
|
+
], DyteChannelSelectorUi);
|
|
508
|
+
export { DyteChannelSelectorUi };
|
|
509
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelSelectorUi, decorators: [{
|
|
510
|
+
type: Component,
|
|
511
|
+
args: [{
|
|
512
|
+
selector: 'dyte-channel-selector-ui',
|
|
513
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
514
|
+
template: '<ng-content></ng-content>',
|
|
515
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
516
|
+
inputs: ['channels', 'iconPack', 'selectedChannelId', 'showRecentMessage', 't'],
|
|
517
|
+
}]
|
|
518
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
519
|
+
let DyteChannelSelectorView = class DyteChannelSelectorView {
|
|
520
|
+
constructor(c, r, z) {
|
|
521
|
+
this.z = z;
|
|
522
|
+
c.detach();
|
|
523
|
+
this.el = r.nativeElement;
|
|
524
|
+
proxyOutputs(this, this.el, ['channelChange']);
|
|
525
|
+
}
|
|
526
|
+
};
|
|
527
|
+
DyteChannelSelectorView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelSelectorView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
528
|
+
DyteChannelSelectorView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChannelSelectorView, selector: "dyte-channel-selector-view", inputs: { channels: "channels", disableSearch: "disableSearch", hideAvatar: "hideAvatar", iconPack: "iconPack", selectedChannelId: "selectedChannelId", t: "t", viewAs: "viewAs" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
529
|
+
DyteChannelSelectorView = __decorate([
|
|
530
|
+
ProxyCmp({
|
|
531
|
+
inputs: ['channels', 'disableSearch', 'hideAvatar', 'iconPack', 'selectedChannelId', 't', 'viewAs']
|
|
532
|
+
})
|
|
533
|
+
], DyteChannelSelectorView);
|
|
534
|
+
export { DyteChannelSelectorView };
|
|
535
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChannelSelectorView, decorators: [{
|
|
536
|
+
type: Component,
|
|
537
|
+
args: [{
|
|
538
|
+
selector: 'dyte-channel-selector-view',
|
|
539
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
540
|
+
template: '<ng-content></ng-content>',
|
|
541
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
542
|
+
inputs: ['channels', 'disableSearch', 'hideAvatar', 'iconPack', 'selectedChannelId', 't', 'viewAs'],
|
|
543
|
+
}]
|
|
544
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
545
|
+
let DyteChat = class DyteChat {
|
|
546
|
+
constructor(c, r, z) {
|
|
547
|
+
this.z = z;
|
|
548
|
+
c.detach();
|
|
549
|
+
this.el = r.nativeElement;
|
|
550
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
551
|
+
}
|
|
552
|
+
};
|
|
553
|
+
DyteChat.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChat, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
554
|
+
DyteChat.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChat, selector: "dyte-chat", inputs: { config: "config", disablePrivateChat: "disablePrivateChat", displayFilter: "displayFilter", iconPack: "iconPack", meeting: "meeting", privatePresetFilter: "privatePresetFilter", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
555
|
+
DyteChat = __decorate([
|
|
556
|
+
ProxyCmp({
|
|
557
|
+
inputs: ['config', 'disablePrivateChat', 'displayFilter', 'iconPack', 'meeting', 'privatePresetFilter', 'size', 't']
|
|
558
|
+
})
|
|
559
|
+
], DyteChat);
|
|
560
|
+
export { DyteChat };
|
|
561
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChat, decorators: [{
|
|
562
|
+
type: Component,
|
|
563
|
+
args: [{
|
|
564
|
+
selector: 'dyte-chat',
|
|
565
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
566
|
+
template: '<ng-content></ng-content>',
|
|
567
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
568
|
+
inputs: ['config', 'disablePrivateChat', 'displayFilter', 'iconPack', 'meeting', 'privatePresetFilter', 'size', 't'],
|
|
569
|
+
}]
|
|
570
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
571
|
+
let DyteChatComposerUi = class DyteChatComposerUi {
|
|
572
|
+
constructor(c, r, z) {
|
|
573
|
+
this.z = z;
|
|
574
|
+
c.detach();
|
|
575
|
+
this.el = r.nativeElement;
|
|
576
|
+
proxyOutputs(this, this.el, ['dyteNewMessage', 'dyteEditMessage', 'dyteEditCancelled']);
|
|
577
|
+
}
|
|
578
|
+
};
|
|
579
|
+
DyteChatComposerUi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatComposerUi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
580
|
+
DyteChatComposerUi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatComposerUi, selector: "dyte-chat-composer-ui", inputs: { canSendFiles: "canSendFiles", canSendTextMessage: "canSendTextMessage", channelId: "channelId", disableEmojiPicker: "disableEmojiPicker", iconPack: "iconPack", members: "members", prefill: "prefill", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
581
|
+
DyteChatComposerUi = __decorate([
|
|
582
|
+
ProxyCmp({
|
|
583
|
+
inputs: ['canSendFiles', 'canSendTextMessage', 'channelId', 'disableEmojiPicker', 'iconPack', 'members', 'prefill', 'size', 't']
|
|
584
|
+
})
|
|
585
|
+
], DyteChatComposerUi);
|
|
586
|
+
export { DyteChatComposerUi };
|
|
587
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatComposerUi, decorators: [{
|
|
588
|
+
type: Component,
|
|
589
|
+
args: [{
|
|
590
|
+
selector: 'dyte-chat-composer-ui',
|
|
591
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
592
|
+
template: '<ng-content></ng-content>',
|
|
593
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
594
|
+
inputs: ['canSendFiles', 'canSendTextMessage', 'channelId', 'disableEmojiPicker', 'iconPack', 'members', 'prefill', 'size', 't'],
|
|
595
|
+
}]
|
|
596
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
597
|
+
let DyteChatComposerView = class DyteChatComposerView {
|
|
598
|
+
constructor(c, r, z) {
|
|
599
|
+
this.z = z;
|
|
600
|
+
c.detach();
|
|
601
|
+
this.el = r.nativeElement;
|
|
602
|
+
proxyOutputs(this, this.el, ['newMessage', 'editMessage', 'editCancel', 'quotedMessageDismiss']);
|
|
603
|
+
}
|
|
604
|
+
};
|
|
605
|
+
DyteChatComposerView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatComposerView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
606
|
+
DyteChatComposerView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatComposerView, selector: "dyte-chat-composer-view", inputs: { canSendFiles: "canSendFiles", canSendTextMessage: "canSendTextMessage", disableEmojiPicker: "disableEmojiPicker", iconPack: "iconPack", inputTextPlaceholder: "inputTextPlaceholder", isEditing: "isEditing", maxLength: "maxLength", message: "message", quotedMessage: "quotedMessage", rateLimits: "rateLimits", storageKey: "storageKey", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
607
|
+
DyteChatComposerView = __decorate([
|
|
608
|
+
ProxyCmp({
|
|
609
|
+
inputs: ['canSendFiles', 'canSendTextMessage', 'disableEmojiPicker', 'iconPack', 'inputTextPlaceholder', 'isEditing', 'maxLength', 'message', 'quotedMessage', 'rateLimits', 'storageKey', 't']
|
|
610
|
+
})
|
|
611
|
+
], DyteChatComposerView);
|
|
612
|
+
export { DyteChatComposerView };
|
|
613
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatComposerView, decorators: [{
|
|
614
|
+
type: Component,
|
|
615
|
+
args: [{
|
|
616
|
+
selector: 'dyte-chat-composer-view',
|
|
617
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
618
|
+
template: '<ng-content></ng-content>',
|
|
619
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
620
|
+
inputs: ['canSendFiles', 'canSendTextMessage', 'disableEmojiPicker', 'iconPack', 'inputTextPlaceholder', 'isEditing', 'maxLength', 'message', 'quotedMessage', 'rateLimits', 'storageKey', 't'],
|
|
621
|
+
}]
|
|
622
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
623
|
+
let DyteChatMessage = class DyteChatMessage {
|
|
624
|
+
constructor(c, r, z) {
|
|
625
|
+
this.z = z;
|
|
626
|
+
c.detach();
|
|
627
|
+
this.el = r.nativeElement;
|
|
628
|
+
proxyOutputs(this, this.el, ['edit', 'reply', 'pin', 'delete']);
|
|
629
|
+
}
|
|
630
|
+
};
|
|
631
|
+
DyteChatMessage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
632
|
+
DyteChatMessage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatMessage, selector: "dyte-chat-message", inputs: { alignRight: "alignRight", canDelete: "canDelete", canEdit: "canEdit", canPin: "canPin", canReply: "canReply", child: "child", disableControls: "disableControls", hideAvatar: "hideAvatar", iconPack: "iconPack", isContinued: "isContinued", isSelf: "isSelf", isUnread: "isUnread", leftAlign: "leftAlign", message: "message", senderDisplayPicture: "senderDisplayPicture", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
633
|
+
DyteChatMessage = __decorate([
|
|
634
|
+
ProxyCmp({
|
|
635
|
+
inputs: ['alignRight', 'canDelete', 'canEdit', 'canPin', 'canReply', 'child', 'disableControls', 'hideAvatar', 'iconPack', 'isContinued', 'isSelf', 'isUnread', 'leftAlign', 'message', 'senderDisplayPicture', 'size', 't']
|
|
636
|
+
})
|
|
637
|
+
], DyteChatMessage);
|
|
638
|
+
export { DyteChatMessage };
|
|
639
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessage, decorators: [{
|
|
640
|
+
type: Component,
|
|
641
|
+
args: [{
|
|
642
|
+
selector: 'dyte-chat-message',
|
|
643
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
644
|
+
template: '<ng-content></ng-content>',
|
|
645
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
646
|
+
inputs: ['alignRight', 'canDelete', 'canEdit', 'canPin', 'canReply', 'child', 'disableControls', 'hideAvatar', 'iconPack', 'isContinued', 'isSelf', 'isUnread', 'leftAlign', 'message', 'senderDisplayPicture', 'size', 't'],
|
|
647
|
+
}]
|
|
648
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
649
|
+
let DyteChatMessagesUi = class DyteChatMessagesUi {
|
|
650
|
+
constructor(c, r, z) {
|
|
651
|
+
this.z = z;
|
|
652
|
+
c.detach();
|
|
653
|
+
this.el = r.nativeElement;
|
|
654
|
+
proxyOutputs(this, this.el, ['pinMessage', 'dyteStateUpdate']);
|
|
655
|
+
}
|
|
656
|
+
};
|
|
657
|
+
DyteChatMessagesUi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessagesUi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
658
|
+
DyteChatMessagesUi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatMessagesUi, selector: "dyte-chat-messages-ui", inputs: { canPinMessages: "canPinMessages", iconPack: "iconPack", messages: "messages", selectedGroup: "selectedGroup", selfUserId: "selfUserId", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
659
|
+
DyteChatMessagesUi = __decorate([
|
|
660
|
+
ProxyCmp({
|
|
661
|
+
inputs: ['canPinMessages', 'iconPack', 'messages', 'selectedGroup', 'selfUserId', 'size', 't']
|
|
662
|
+
})
|
|
663
|
+
], DyteChatMessagesUi);
|
|
664
|
+
export { DyteChatMessagesUi };
|
|
665
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessagesUi, decorators: [{
|
|
666
|
+
type: Component,
|
|
667
|
+
args: [{
|
|
668
|
+
selector: 'dyte-chat-messages-ui',
|
|
669
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
670
|
+
template: '<ng-content></ng-content>',
|
|
671
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
672
|
+
inputs: ['canPinMessages', 'iconPack', 'messages', 'selectedGroup', 'selfUserId', 'size', 't'],
|
|
673
|
+
}]
|
|
674
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
675
|
+
let DyteChatMessagesUiPaginated = class DyteChatMessagesUiPaginated {
|
|
676
|
+
constructor(c, r, z) {
|
|
677
|
+
this.z = z;
|
|
678
|
+
c.detach();
|
|
679
|
+
this.el = r.nativeElement;
|
|
680
|
+
proxyOutputs(this, this.el, ['editMessageInit', 'pinMessage', 'deleteMessage', 'dyteStateUpdate']);
|
|
681
|
+
}
|
|
682
|
+
};
|
|
683
|
+
DyteChatMessagesUiPaginated.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessagesUiPaginated, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
684
|
+
DyteChatMessagesUiPaginated.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatMessagesUiPaginated, selector: "dyte-chat-messages-ui-paginated", inputs: { iconPack: "iconPack", leftAlign: "leftAlign", meeting: "meeting", selectedChannel: "selectedChannel", selectedChannelId: "selectedChannelId", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
685
|
+
DyteChatMessagesUiPaginated = __decorate([
|
|
686
|
+
ProxyCmp({
|
|
687
|
+
inputs: ['iconPack', 'leftAlign', 'meeting', 'selectedChannel', 'selectedChannelId', 'size', 't']
|
|
688
|
+
})
|
|
689
|
+
], DyteChatMessagesUiPaginated);
|
|
690
|
+
export { DyteChatMessagesUiPaginated };
|
|
691
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatMessagesUiPaginated, decorators: [{
|
|
692
|
+
type: Component,
|
|
693
|
+
args: [{
|
|
694
|
+
selector: 'dyte-chat-messages-ui-paginated',
|
|
695
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
696
|
+
template: '<ng-content></ng-content>',
|
|
697
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
698
|
+
inputs: ['iconPack', 'leftAlign', 'meeting', 'selectedChannel', 'selectedChannelId', 'size', 't'],
|
|
699
|
+
}]
|
|
700
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
701
|
+
let DyteChatSearchResults = class DyteChatSearchResults {
|
|
702
|
+
constructor(c, r, z) {
|
|
703
|
+
this.z = z;
|
|
704
|
+
c.detach();
|
|
705
|
+
this.el = r.nativeElement;
|
|
706
|
+
}
|
|
707
|
+
};
|
|
708
|
+
DyteChatSearchResults.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatSearchResults, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
709
|
+
DyteChatSearchResults.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatSearchResults, selector: "dyte-chat-search-results", inputs: { channelId: "channelId", iconPack: "iconPack", meeting: "meeting", query: "query", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
710
|
+
DyteChatSearchResults = __decorate([
|
|
711
|
+
ProxyCmp({
|
|
712
|
+
inputs: ['channelId', 'iconPack', 'meeting', 'query', 't']
|
|
713
|
+
})
|
|
714
|
+
], DyteChatSearchResults);
|
|
715
|
+
export { DyteChatSearchResults };
|
|
716
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatSearchResults, decorators: [{
|
|
717
|
+
type: Component,
|
|
718
|
+
args: [{
|
|
719
|
+
selector: 'dyte-chat-search-results',
|
|
720
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
721
|
+
template: '<ng-content></ng-content>',
|
|
722
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
723
|
+
inputs: ['channelId', 'iconPack', 'meeting', 'query', 't'],
|
|
724
|
+
}]
|
|
725
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
726
|
+
let DyteChatSelectorUi = class DyteChatSelectorUi {
|
|
727
|
+
constructor(c, r, z) {
|
|
728
|
+
this.z = z;
|
|
729
|
+
c.detach();
|
|
730
|
+
this.el = r.nativeElement;
|
|
731
|
+
proxyOutputs(this, this.el, ['dyteChatGroupChanged']);
|
|
732
|
+
}
|
|
733
|
+
};
|
|
734
|
+
DyteChatSelectorUi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatSelectorUi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
735
|
+
DyteChatSelectorUi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatSelectorUi, selector: "dyte-chat-selector-ui", inputs: { groups: "groups", iconPack: "iconPack", selectedGroupId: "selectedGroupId", selfUserId: "selfUserId", t: "t", unreadCounts: "unreadCounts" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
736
|
+
DyteChatSelectorUi = __decorate([
|
|
737
|
+
ProxyCmp({
|
|
738
|
+
inputs: ['groups', 'iconPack', 'selectedGroupId', 'selfUserId', 't', 'unreadCounts']
|
|
739
|
+
})
|
|
740
|
+
], DyteChatSelectorUi);
|
|
741
|
+
export { DyteChatSelectorUi };
|
|
742
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatSelectorUi, decorators: [{
|
|
743
|
+
type: Component,
|
|
744
|
+
args: [{
|
|
745
|
+
selector: 'dyte-chat-selector-ui',
|
|
746
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
747
|
+
template: '<ng-content></ng-content>',
|
|
748
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
749
|
+
inputs: ['groups', 'iconPack', 'selectedGroupId', 'selfUserId', 't', 'unreadCounts'],
|
|
750
|
+
}]
|
|
751
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
752
|
+
let DyteChatToggle = class DyteChatToggle {
|
|
753
|
+
constructor(c, r, z) {
|
|
754
|
+
this.z = z;
|
|
755
|
+
c.detach();
|
|
756
|
+
this.el = r.nativeElement;
|
|
757
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
758
|
+
}
|
|
759
|
+
};
|
|
760
|
+
DyteChatToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
761
|
+
DyteChatToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteChatToggle, selector: "dyte-chat-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
762
|
+
DyteChatToggle = __decorate([
|
|
763
|
+
ProxyCmp({
|
|
764
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
765
|
+
})
|
|
766
|
+
], DyteChatToggle);
|
|
767
|
+
export { DyteChatToggle };
|
|
768
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteChatToggle, decorators: [{
|
|
769
|
+
type: Component,
|
|
770
|
+
args: [{
|
|
771
|
+
selector: 'dyte-chat-toggle',
|
|
772
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
773
|
+
template: '<ng-content></ng-content>',
|
|
774
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
775
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
776
|
+
}]
|
|
777
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
778
|
+
let DyteClock = class DyteClock {
|
|
779
|
+
constructor(c, r, z) {
|
|
780
|
+
this.z = z;
|
|
781
|
+
c.detach();
|
|
782
|
+
this.el = r.nativeElement;
|
|
783
|
+
}
|
|
784
|
+
};
|
|
785
|
+
DyteClock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteClock, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
786
|
+
DyteClock.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteClock, selector: "dyte-clock", inputs: { iconPack: "iconPack", meeting: "meeting" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
787
|
+
DyteClock = __decorate([
|
|
788
|
+
ProxyCmp({
|
|
789
|
+
inputs: ['iconPack', 'meeting']
|
|
790
|
+
})
|
|
791
|
+
], DyteClock);
|
|
792
|
+
export { DyteClock };
|
|
793
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteClock, decorators: [{
|
|
794
|
+
type: Component,
|
|
795
|
+
args: [{
|
|
796
|
+
selector: 'dyte-clock',
|
|
797
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
798
|
+
template: '<ng-content></ng-content>',
|
|
799
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
800
|
+
inputs: ['iconPack', 'meeting'],
|
|
801
|
+
}]
|
|
802
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
803
|
+
let DyteConfirmationModal = class DyteConfirmationModal {
|
|
804
|
+
constructor(c, r, z) {
|
|
805
|
+
this.z = z;
|
|
806
|
+
c.detach();
|
|
807
|
+
this.el = r.nativeElement;
|
|
808
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
809
|
+
}
|
|
810
|
+
};
|
|
811
|
+
DyteConfirmationModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteConfirmationModal, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
812
|
+
DyteConfirmationModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteConfirmationModal, selector: "dyte-confirmation-modal", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
813
|
+
DyteConfirmationModal = __decorate([
|
|
814
|
+
ProxyCmp({
|
|
815
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
816
|
+
})
|
|
817
|
+
], DyteConfirmationModal);
|
|
818
|
+
export { DyteConfirmationModal };
|
|
819
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteConfirmationModal, decorators: [{
|
|
820
|
+
type: Component,
|
|
821
|
+
args: [{
|
|
822
|
+
selector: 'dyte-confirmation-modal',
|
|
823
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
824
|
+
template: '<ng-content></ng-content>',
|
|
825
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
826
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
827
|
+
}]
|
|
828
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
829
|
+
let DyteControlbar = class DyteControlbar {
|
|
830
|
+
constructor(c, r, z) {
|
|
831
|
+
this.z = z;
|
|
832
|
+
c.detach();
|
|
833
|
+
this.el = r.nativeElement;
|
|
834
|
+
}
|
|
835
|
+
};
|
|
836
|
+
DyteControlbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteControlbar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
837
|
+
DyteControlbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteControlbar, selector: "dyte-controlbar", inputs: { config: "config", disableRender: "disableRender", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
838
|
+
DyteControlbar = __decorate([
|
|
839
|
+
ProxyCmp({
|
|
840
|
+
inputs: ['config', 'disableRender', 'iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
841
|
+
})
|
|
842
|
+
], DyteControlbar);
|
|
843
|
+
export { DyteControlbar };
|
|
844
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteControlbar, decorators: [{
|
|
845
|
+
type: Component,
|
|
846
|
+
args: [{
|
|
847
|
+
selector: 'dyte-controlbar',
|
|
848
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
849
|
+
template: '<ng-content></ng-content>',
|
|
850
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
851
|
+
inputs: ['config', 'disableRender', 'iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
852
|
+
}]
|
|
853
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
854
|
+
let DyteControlbarButton = class DyteControlbarButton {
|
|
855
|
+
constructor(c, r, z) {
|
|
856
|
+
this.z = z;
|
|
857
|
+
c.detach();
|
|
858
|
+
this.el = r.nativeElement;
|
|
859
|
+
}
|
|
860
|
+
};
|
|
861
|
+
DyteControlbarButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteControlbarButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
862
|
+
DyteControlbarButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteControlbarButton, selector: "dyte-controlbar-button", inputs: { brandIcon: "brandIcon", disabled: "disabled", icon: "icon", iconPack: "iconPack", isLoading: "isLoading", label: "label", showWarning: "showWarning", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
863
|
+
DyteControlbarButton = __decorate([
|
|
864
|
+
ProxyCmp({
|
|
865
|
+
inputs: ['brandIcon', 'disabled', 'icon', 'iconPack', 'isLoading', 'label', 'showWarning', 'size', 'variant']
|
|
866
|
+
})
|
|
867
|
+
], DyteControlbarButton);
|
|
868
|
+
export { DyteControlbarButton };
|
|
869
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteControlbarButton, decorators: [{
|
|
870
|
+
type: Component,
|
|
871
|
+
args: [{
|
|
872
|
+
selector: 'dyte-controlbar-button',
|
|
873
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
874
|
+
template: '<ng-content></ng-content>',
|
|
875
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
876
|
+
inputs: ['brandIcon', 'disabled', 'icon', 'iconPack', 'isLoading', 'label', 'showWarning', 'size', 'variant'],
|
|
877
|
+
}]
|
|
878
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
879
|
+
let DyteCounter = class DyteCounter {
|
|
880
|
+
constructor(c, r, z) {
|
|
881
|
+
this.z = z;
|
|
882
|
+
c.detach();
|
|
883
|
+
this.el = r.nativeElement;
|
|
884
|
+
proxyOutputs(this, this.el, ['valueChange']);
|
|
885
|
+
}
|
|
886
|
+
};
|
|
887
|
+
DyteCounter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCounter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
888
|
+
DyteCounter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteCounter, selector: "dyte-counter", inputs: { iconPack: "iconPack", minValue: "minValue", size: "size", t: "t", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
889
|
+
DyteCounter = __decorate([
|
|
890
|
+
ProxyCmp({
|
|
891
|
+
inputs: ['iconPack', 'minValue', 'size', 't', 'value']
|
|
892
|
+
})
|
|
893
|
+
], DyteCounter);
|
|
894
|
+
export { DyteCounter };
|
|
895
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteCounter, decorators: [{
|
|
896
|
+
type: Component,
|
|
897
|
+
args: [{
|
|
898
|
+
selector: 'dyte-counter',
|
|
899
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
900
|
+
template: '<ng-content></ng-content>',
|
|
901
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
902
|
+
inputs: ['iconPack', 'minValue', 'size', 't', 'value'],
|
|
903
|
+
}]
|
|
904
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
905
|
+
let DyteDebugger = class DyteDebugger {
|
|
906
|
+
constructor(c, r, z) {
|
|
907
|
+
this.z = z;
|
|
908
|
+
c.detach();
|
|
909
|
+
this.el = r.nativeElement;
|
|
910
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
911
|
+
}
|
|
912
|
+
};
|
|
913
|
+
DyteDebugger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebugger, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
914
|
+
DyteDebugger.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebugger, selector: "dyte-debugger", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
915
|
+
DyteDebugger = __decorate([
|
|
916
|
+
ProxyCmp({
|
|
917
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
918
|
+
})
|
|
919
|
+
], DyteDebugger);
|
|
920
|
+
export { DyteDebugger };
|
|
921
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebugger, decorators: [{
|
|
922
|
+
type: Component,
|
|
923
|
+
args: [{
|
|
924
|
+
selector: 'dyte-debugger',
|
|
925
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
926
|
+
template: '<ng-content></ng-content>',
|
|
927
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
928
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
929
|
+
}]
|
|
930
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
931
|
+
let DyteDebuggerAudio = class DyteDebuggerAudio {
|
|
932
|
+
constructor(c, r, z) {
|
|
933
|
+
this.z = z;
|
|
934
|
+
c.detach();
|
|
935
|
+
this.el = r.nativeElement;
|
|
936
|
+
}
|
|
937
|
+
};
|
|
938
|
+
DyteDebuggerAudio.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerAudio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
939
|
+
DyteDebuggerAudio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebuggerAudio, selector: "dyte-debugger-audio", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
940
|
+
DyteDebuggerAudio = __decorate([
|
|
941
|
+
ProxyCmp({
|
|
942
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
943
|
+
})
|
|
944
|
+
], DyteDebuggerAudio);
|
|
945
|
+
export { DyteDebuggerAudio };
|
|
946
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerAudio, decorators: [{
|
|
947
|
+
type: Component,
|
|
948
|
+
args: [{
|
|
949
|
+
selector: 'dyte-debugger-audio',
|
|
950
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
951
|
+
template: '<ng-content></ng-content>',
|
|
952
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
953
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
954
|
+
}]
|
|
955
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
956
|
+
let DyteDebuggerScreenshare = class DyteDebuggerScreenshare {
|
|
957
|
+
constructor(c, r, z) {
|
|
958
|
+
this.z = z;
|
|
959
|
+
c.detach();
|
|
960
|
+
this.el = r.nativeElement;
|
|
961
|
+
}
|
|
962
|
+
};
|
|
963
|
+
DyteDebuggerScreenshare.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerScreenshare, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
964
|
+
DyteDebuggerScreenshare.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebuggerScreenshare, selector: "dyte-debugger-screenshare", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
965
|
+
DyteDebuggerScreenshare = __decorate([
|
|
966
|
+
ProxyCmp({
|
|
967
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
968
|
+
})
|
|
969
|
+
], DyteDebuggerScreenshare);
|
|
970
|
+
export { DyteDebuggerScreenshare };
|
|
971
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerScreenshare, decorators: [{
|
|
972
|
+
type: Component,
|
|
973
|
+
args: [{
|
|
974
|
+
selector: 'dyte-debugger-screenshare',
|
|
975
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
976
|
+
template: '<ng-content></ng-content>',
|
|
977
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
978
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
979
|
+
}]
|
|
980
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
981
|
+
let DyteDebuggerSystem = class DyteDebuggerSystem {
|
|
982
|
+
constructor(c, r, z) {
|
|
983
|
+
this.z = z;
|
|
984
|
+
c.detach();
|
|
985
|
+
this.el = r.nativeElement;
|
|
986
|
+
}
|
|
987
|
+
};
|
|
988
|
+
DyteDebuggerSystem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerSystem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
989
|
+
DyteDebuggerSystem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebuggerSystem, selector: "dyte-debugger-system", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
990
|
+
DyteDebuggerSystem = __decorate([
|
|
991
|
+
ProxyCmp({
|
|
992
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
993
|
+
})
|
|
994
|
+
], DyteDebuggerSystem);
|
|
995
|
+
export { DyteDebuggerSystem };
|
|
996
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerSystem, decorators: [{
|
|
997
|
+
type: Component,
|
|
998
|
+
args: [{
|
|
999
|
+
selector: 'dyte-debugger-system',
|
|
1000
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1001
|
+
template: '<ng-content></ng-content>',
|
|
1002
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1003
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
1004
|
+
}]
|
|
1005
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1006
|
+
let DyteDebuggerToggle = class DyteDebuggerToggle {
|
|
1007
|
+
constructor(c, r, z) {
|
|
1008
|
+
this.z = z;
|
|
1009
|
+
c.detach();
|
|
1010
|
+
this.el = r.nativeElement;
|
|
1011
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1012
|
+
}
|
|
1013
|
+
};
|
|
1014
|
+
DyteDebuggerToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1015
|
+
DyteDebuggerToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebuggerToggle, selector: "dyte-debugger-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1016
|
+
DyteDebuggerToggle = __decorate([
|
|
1017
|
+
ProxyCmp({
|
|
1018
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
1019
|
+
})
|
|
1020
|
+
], DyteDebuggerToggle);
|
|
1021
|
+
export { DyteDebuggerToggle };
|
|
1022
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerToggle, decorators: [{
|
|
1023
|
+
type: Component,
|
|
1024
|
+
args: [{
|
|
1025
|
+
selector: 'dyte-debugger-toggle',
|
|
1026
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1027
|
+
template: '<ng-content></ng-content>',
|
|
1028
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1029
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
1030
|
+
}]
|
|
1031
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1032
|
+
let DyteDebuggerVideo = class DyteDebuggerVideo {
|
|
1033
|
+
constructor(c, r, z) {
|
|
1034
|
+
this.z = z;
|
|
1035
|
+
c.detach();
|
|
1036
|
+
this.el = r.nativeElement;
|
|
1037
|
+
}
|
|
1038
|
+
};
|
|
1039
|
+
DyteDebuggerVideo.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerVideo, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1040
|
+
DyteDebuggerVideo.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDebuggerVideo, selector: "dyte-debugger-video", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1041
|
+
DyteDebuggerVideo = __decorate([
|
|
1042
|
+
ProxyCmp({
|
|
1043
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
1044
|
+
})
|
|
1045
|
+
], DyteDebuggerVideo);
|
|
1046
|
+
export { DyteDebuggerVideo };
|
|
1047
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDebuggerVideo, decorators: [{
|
|
1048
|
+
type: Component,
|
|
1049
|
+
args: [{
|
|
1050
|
+
selector: 'dyte-debugger-video',
|
|
1051
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1052
|
+
template: '<ng-content></ng-content>',
|
|
1053
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1054
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
1055
|
+
}]
|
|
1056
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1057
|
+
let DyteDialog = class DyteDialog {
|
|
1058
|
+
constructor(c, r, z) {
|
|
1059
|
+
this.z = z;
|
|
1060
|
+
c.detach();
|
|
1061
|
+
this.el = r.nativeElement;
|
|
1062
|
+
proxyOutputs(this, this.el, ['dyteDialogClose']);
|
|
1063
|
+
}
|
|
1064
|
+
};
|
|
1065
|
+
DyteDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDialog, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1066
|
+
DyteDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDialog, selector: "dyte-dialog", inputs: { config: "config", disableEscapeKey: "disableEscapeKey", hideCloseButton: "hideCloseButton", iconPack: "iconPack", meeting: "meeting", open: "open", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1067
|
+
DyteDialog = __decorate([
|
|
1068
|
+
ProxyCmp({
|
|
1069
|
+
inputs: ['config', 'disableEscapeKey', 'hideCloseButton', 'iconPack', 'meeting', 'open', 'size', 'states', 't']
|
|
1070
|
+
})
|
|
1071
|
+
], DyteDialog);
|
|
1072
|
+
export { DyteDialog };
|
|
1073
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDialog, decorators: [{
|
|
1074
|
+
type: Component,
|
|
1075
|
+
args: [{
|
|
1076
|
+
selector: 'dyte-dialog',
|
|
1077
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1078
|
+
template: '<ng-content></ng-content>',
|
|
1079
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1080
|
+
inputs: ['config', 'disableEscapeKey', 'hideCloseButton', 'iconPack', 'meeting', 'open', 'size', 'states', 't'],
|
|
1081
|
+
}]
|
|
1082
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1083
|
+
let DyteDialogManager = class DyteDialogManager {
|
|
1084
|
+
constructor(c, r, z) {
|
|
1085
|
+
this.z = z;
|
|
1086
|
+
c.detach();
|
|
1087
|
+
this.el = r.nativeElement;
|
|
1088
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1089
|
+
}
|
|
1090
|
+
};
|
|
1091
|
+
DyteDialogManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDialogManager, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1092
|
+
DyteDialogManager.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDialogManager, selector: "dyte-dialog-manager", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1093
|
+
DyteDialogManager = __decorate([
|
|
1094
|
+
ProxyCmp({
|
|
1095
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
1096
|
+
})
|
|
1097
|
+
], DyteDialogManager);
|
|
1098
|
+
export { DyteDialogManager };
|
|
1099
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDialogManager, decorators: [{
|
|
1100
|
+
type: Component,
|
|
1101
|
+
args: [{
|
|
1102
|
+
selector: 'dyte-dialog-manager',
|
|
1103
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1104
|
+
template: '<ng-content></ng-content>',
|
|
1105
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1106
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
1107
|
+
}]
|
|
1108
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1109
|
+
let DyteDraftAttachmentView = class DyteDraftAttachmentView {
|
|
1110
|
+
constructor(c, r, z) {
|
|
1111
|
+
this.z = z;
|
|
1112
|
+
c.detach();
|
|
1113
|
+
this.el = r.nativeElement;
|
|
1114
|
+
proxyOutputs(this, this.el, ['deleteAttachment']);
|
|
1115
|
+
}
|
|
1116
|
+
};
|
|
1117
|
+
DyteDraftAttachmentView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDraftAttachmentView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1118
|
+
DyteDraftAttachmentView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteDraftAttachmentView, selector: "dyte-draft-attachment-view", inputs: { attachment: "attachment", iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1119
|
+
DyteDraftAttachmentView = __decorate([
|
|
1120
|
+
ProxyCmp({
|
|
1121
|
+
inputs: ['attachment', 'iconPack', 't']
|
|
1122
|
+
})
|
|
1123
|
+
], DyteDraftAttachmentView);
|
|
1124
|
+
export { DyteDraftAttachmentView };
|
|
1125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteDraftAttachmentView, decorators: [{
|
|
1126
|
+
type: Component,
|
|
1127
|
+
args: [{
|
|
1128
|
+
selector: 'dyte-draft-attachment-view',
|
|
1129
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1130
|
+
template: '<ng-content></ng-content>',
|
|
1131
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1132
|
+
inputs: ['attachment', 'iconPack', 't'],
|
|
1133
|
+
}]
|
|
1134
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1135
|
+
let DyteEmojiPicker = class DyteEmojiPicker {
|
|
1136
|
+
constructor(c, r, z) {
|
|
1137
|
+
this.z = z;
|
|
1138
|
+
c.detach();
|
|
1139
|
+
this.el = r.nativeElement;
|
|
1140
|
+
proxyOutputs(this, this.el, ['pickerClose', 'dyteEmojiClicked']);
|
|
1141
|
+
}
|
|
1142
|
+
};
|
|
1143
|
+
DyteEmojiPicker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEmojiPicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1144
|
+
DyteEmojiPicker.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteEmojiPicker, selector: "dyte-emoji-picker", inputs: { focusWhenOpened: "focusWhenOpened", iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1145
|
+
DyteEmojiPicker = __decorate([
|
|
1146
|
+
ProxyCmp({
|
|
1147
|
+
inputs: ['focusWhenOpened', 'iconPack', 't']
|
|
1148
|
+
})
|
|
1149
|
+
], DyteEmojiPicker);
|
|
1150
|
+
export { DyteEmojiPicker };
|
|
1151
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEmojiPicker, decorators: [{
|
|
1152
|
+
type: Component,
|
|
1153
|
+
args: [{
|
|
1154
|
+
selector: 'dyte-emoji-picker',
|
|
1155
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1156
|
+
template: '<ng-content></ng-content>',
|
|
1157
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1158
|
+
inputs: ['focusWhenOpened', 'iconPack', 't'],
|
|
1159
|
+
}]
|
|
1160
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1161
|
+
let DyteEmojiPickerButton = class DyteEmojiPickerButton {
|
|
1162
|
+
constructor(c, r, z) {
|
|
1163
|
+
this.z = z;
|
|
1164
|
+
c.detach();
|
|
1165
|
+
this.el = r.nativeElement;
|
|
1166
|
+
}
|
|
1167
|
+
};
|
|
1168
|
+
DyteEmojiPickerButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEmojiPickerButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1169
|
+
DyteEmojiPickerButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteEmojiPickerButton, selector: "dyte-emoji-picker-button", inputs: { iconPack: "iconPack", isActive: "isActive", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1170
|
+
DyteEmojiPickerButton = __decorate([
|
|
1171
|
+
ProxyCmp({
|
|
1172
|
+
inputs: ['iconPack', 'isActive', 't']
|
|
1173
|
+
})
|
|
1174
|
+
], DyteEmojiPickerButton);
|
|
1175
|
+
export { DyteEmojiPickerButton };
|
|
1176
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEmojiPickerButton, decorators: [{
|
|
1177
|
+
type: Component,
|
|
1178
|
+
args: [{
|
|
1179
|
+
selector: 'dyte-emoji-picker-button',
|
|
1180
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1181
|
+
template: '<ng-content></ng-content>',
|
|
1182
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1183
|
+
inputs: ['iconPack', 'isActive', 't'],
|
|
1184
|
+
}]
|
|
1185
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1186
|
+
let DyteEndedScreen = class DyteEndedScreen {
|
|
1187
|
+
constructor(c, r, z) {
|
|
1188
|
+
this.z = z;
|
|
1189
|
+
c.detach();
|
|
1190
|
+
this.el = r.nativeElement;
|
|
1191
|
+
}
|
|
1192
|
+
};
|
|
1193
|
+
DyteEndedScreen.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEndedScreen, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1194
|
+
DyteEndedScreen.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteEndedScreen, selector: "dyte-ended-screen", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1195
|
+
DyteEndedScreen = __decorate([
|
|
1196
|
+
ProxyCmp({
|
|
1197
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
1198
|
+
})
|
|
1199
|
+
], DyteEndedScreen);
|
|
1200
|
+
export { DyteEndedScreen };
|
|
1201
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteEndedScreen, decorators: [{
|
|
1202
|
+
type: Component,
|
|
1203
|
+
args: [{
|
|
1204
|
+
selector: 'dyte-ended-screen',
|
|
1205
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1206
|
+
template: '<ng-content></ng-content>',
|
|
1207
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1208
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
1209
|
+
}]
|
|
1210
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1211
|
+
let DyteFileDropzone = class DyteFileDropzone {
|
|
1212
|
+
constructor(c, r, z) {
|
|
1213
|
+
this.z = z;
|
|
1214
|
+
c.detach();
|
|
1215
|
+
this.el = r.nativeElement;
|
|
1216
|
+
proxyOutputs(this, this.el, ['dropCallback']);
|
|
1217
|
+
}
|
|
1218
|
+
};
|
|
1219
|
+
DyteFileDropzone.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileDropzone, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1220
|
+
DyteFileDropzone.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteFileDropzone, selector: "dyte-file-dropzone", inputs: { hostEl: "hostEl", iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1221
|
+
DyteFileDropzone = __decorate([
|
|
1222
|
+
ProxyCmp({
|
|
1223
|
+
inputs: ['hostEl', 'iconPack', 't']
|
|
1224
|
+
})
|
|
1225
|
+
], DyteFileDropzone);
|
|
1226
|
+
export { DyteFileDropzone };
|
|
1227
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileDropzone, decorators: [{
|
|
1228
|
+
type: Component,
|
|
1229
|
+
args: [{
|
|
1230
|
+
selector: 'dyte-file-dropzone',
|
|
1231
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1232
|
+
template: '<ng-content></ng-content>',
|
|
1233
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1234
|
+
inputs: ['hostEl', 'iconPack', 't'],
|
|
1235
|
+
}]
|
|
1236
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1237
|
+
let DyteFileMessage = class DyteFileMessage {
|
|
1238
|
+
constructor(c, r, z) {
|
|
1239
|
+
this.z = z;
|
|
1240
|
+
c.detach();
|
|
1241
|
+
this.el = r.nativeElement;
|
|
1242
|
+
}
|
|
1243
|
+
};
|
|
1244
|
+
DyteFileMessage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1245
|
+
DyteFileMessage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteFileMessage, selector: "dyte-file-message", inputs: { iconPack: "iconPack", isContinued: "isContinued", message: "message", now: "now", showBubble: "showBubble", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1246
|
+
DyteFileMessage = __decorate([
|
|
1247
|
+
ProxyCmp({
|
|
1248
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't']
|
|
1249
|
+
})
|
|
1250
|
+
], DyteFileMessage);
|
|
1251
|
+
export { DyteFileMessage };
|
|
1252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileMessage, decorators: [{
|
|
1253
|
+
type: Component,
|
|
1254
|
+
args: [{
|
|
1255
|
+
selector: 'dyte-file-message',
|
|
1256
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1257
|
+
template: '<ng-content></ng-content>',
|
|
1258
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1259
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't'],
|
|
1260
|
+
}]
|
|
1261
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1262
|
+
let DyteFileMessageView = class DyteFileMessageView {
|
|
1263
|
+
constructor(c, r, z) {
|
|
1264
|
+
this.z = z;
|
|
1265
|
+
c.detach();
|
|
1266
|
+
this.el = r.nativeElement;
|
|
1267
|
+
}
|
|
1268
|
+
};
|
|
1269
|
+
DyteFileMessageView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileMessageView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1270
|
+
DyteFileMessageView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteFileMessageView, selector: "dyte-file-message-view", inputs: { iconPack: "iconPack", name: "name", size: "size", url: "url" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1271
|
+
DyteFileMessageView = __decorate([
|
|
1272
|
+
ProxyCmp({
|
|
1273
|
+
inputs: ['iconPack', 'name', 'size', 'url']
|
|
1274
|
+
})
|
|
1275
|
+
], DyteFileMessageView);
|
|
1276
|
+
export { DyteFileMessageView };
|
|
1277
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFileMessageView, decorators: [{
|
|
1278
|
+
type: Component,
|
|
1279
|
+
args: [{
|
|
1280
|
+
selector: 'dyte-file-message-view',
|
|
1281
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1282
|
+
template: '<ng-content></ng-content>',
|
|
1283
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1284
|
+
inputs: ['iconPack', 'name', 'size', 'url'],
|
|
1285
|
+
}]
|
|
1286
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1287
|
+
let DyteFilePickerButton = class DyteFilePickerButton {
|
|
1288
|
+
constructor(c, r, z) {
|
|
1289
|
+
this.z = z;
|
|
1290
|
+
c.detach();
|
|
1291
|
+
this.el = r.nativeElement;
|
|
1292
|
+
proxyOutputs(this, this.el, ['fileChange']);
|
|
1293
|
+
}
|
|
1294
|
+
};
|
|
1295
|
+
DyteFilePickerButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFilePickerButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1296
|
+
DyteFilePickerButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteFilePickerButton, selector: "dyte-file-picker-button", inputs: { filter: "filter", icon: "icon", iconPack: "iconPack", label: "label", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1297
|
+
DyteFilePickerButton = __decorate([
|
|
1298
|
+
ProxyCmp({
|
|
1299
|
+
inputs: ['filter', 'icon', 'iconPack', 'label', 't']
|
|
1300
|
+
})
|
|
1301
|
+
], DyteFilePickerButton);
|
|
1302
|
+
export { DyteFilePickerButton };
|
|
1303
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFilePickerButton, decorators: [{
|
|
1304
|
+
type: Component,
|
|
1305
|
+
args: [{
|
|
1306
|
+
selector: 'dyte-file-picker-button',
|
|
1307
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1308
|
+
template: '<ng-content></ng-content>',
|
|
1309
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1310
|
+
inputs: ['filter', 'icon', 'iconPack', 'label', 't'],
|
|
1311
|
+
}]
|
|
1312
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1313
|
+
let DyteFullscreenToggle = class DyteFullscreenToggle {
|
|
1314
|
+
constructor(c, r, z) {
|
|
1315
|
+
this.z = z;
|
|
1316
|
+
c.detach();
|
|
1317
|
+
this.el = r.nativeElement;
|
|
1318
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1319
|
+
}
|
|
1320
|
+
};
|
|
1321
|
+
DyteFullscreenToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFullscreenToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1322
|
+
DyteFullscreenToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteFullscreenToggle, selector: "dyte-fullscreen-toggle", inputs: { iconPack: "iconPack", size: "size", states: "states", t: "t", targetElement: "targetElement", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1323
|
+
DyteFullscreenToggle = __decorate([
|
|
1324
|
+
ProxyCmp({
|
|
1325
|
+
inputs: ['iconPack', 'size', 'states', 't', 'targetElement', 'variant']
|
|
1326
|
+
})
|
|
1327
|
+
], DyteFullscreenToggle);
|
|
1328
|
+
export { DyteFullscreenToggle };
|
|
1329
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteFullscreenToggle, decorators: [{
|
|
1330
|
+
type: Component,
|
|
1331
|
+
args: [{
|
|
1332
|
+
selector: 'dyte-fullscreen-toggle',
|
|
1333
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1334
|
+
template: '<ng-content></ng-content>',
|
|
1335
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1336
|
+
inputs: ['iconPack', 'size', 'states', 't', 'targetElement', 'variant'],
|
|
1337
|
+
}]
|
|
1338
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1339
|
+
let DyteGrid = class DyteGrid {
|
|
1340
|
+
constructor(c, r, z) {
|
|
1341
|
+
this.z = z;
|
|
1342
|
+
c.detach();
|
|
1343
|
+
this.el = r.nativeElement;
|
|
1344
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1345
|
+
}
|
|
1346
|
+
};
|
|
1347
|
+
DyteGrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1348
|
+
DyteGrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteGrid, selector: "dyte-grid", inputs: { aspectRatio: "aspectRatio", config: "config", gap: "gap", gridSize: "gridSize", iconPack: "iconPack", layout: "layout", meeting: "meeting", overrides: "overrides", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1349
|
+
DyteGrid = __decorate([
|
|
1350
|
+
ProxyCmp({
|
|
1351
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'overrides', 'size', 'states', 't']
|
|
1352
|
+
})
|
|
1353
|
+
], DyteGrid);
|
|
1354
|
+
export { DyteGrid };
|
|
1355
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteGrid, decorators: [{
|
|
1356
|
+
type: Component,
|
|
1357
|
+
args: [{
|
|
1358
|
+
selector: 'dyte-grid',
|
|
1359
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1360
|
+
template: '<ng-content></ng-content>',
|
|
1361
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1362
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'overrides', 'size', 'states', 't'],
|
|
1363
|
+
}]
|
|
1364
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1365
|
+
let DyteGridPagination = class DyteGridPagination {
|
|
1366
|
+
constructor(c, r, z) {
|
|
1367
|
+
this.z = z;
|
|
1368
|
+
c.detach();
|
|
1369
|
+
this.el = r.nativeElement;
|
|
1370
|
+
}
|
|
1371
|
+
};
|
|
1372
|
+
DyteGridPagination.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteGridPagination, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1373
|
+
DyteGridPagination.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteGridPagination, selector: "dyte-grid-pagination", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1374
|
+
DyteGridPagination = __decorate([
|
|
1375
|
+
ProxyCmp({
|
|
1376
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
1377
|
+
})
|
|
1378
|
+
], DyteGridPagination);
|
|
1379
|
+
export { DyteGridPagination };
|
|
1380
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteGridPagination, decorators: [{
|
|
1381
|
+
type: Component,
|
|
1382
|
+
args: [{
|
|
1383
|
+
selector: 'dyte-grid-pagination',
|
|
1384
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1385
|
+
template: '<ng-content></ng-content>',
|
|
1386
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1387
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
1388
|
+
}]
|
|
1389
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1390
|
+
let DyteHeader = class DyteHeader {
|
|
1391
|
+
constructor(c, r, z) {
|
|
1392
|
+
this.z = z;
|
|
1393
|
+
c.detach();
|
|
1394
|
+
this.el = r.nativeElement;
|
|
1395
|
+
}
|
|
1396
|
+
};
|
|
1397
|
+
DyteHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1398
|
+
DyteHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteHeader, selector: "dyte-header", inputs: { config: "config", disableRender: "disableRender", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1399
|
+
DyteHeader = __decorate([
|
|
1400
|
+
ProxyCmp({
|
|
1401
|
+
inputs: ['config', 'disableRender', 'iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
1402
|
+
})
|
|
1403
|
+
], DyteHeader);
|
|
1404
|
+
export { DyteHeader };
|
|
1405
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteHeader, decorators: [{
|
|
1406
|
+
type: Component,
|
|
1407
|
+
args: [{
|
|
1408
|
+
selector: 'dyte-header',
|
|
1409
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1410
|
+
template: '<ng-content></ng-content>',
|
|
1411
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1412
|
+
inputs: ['config', 'disableRender', 'iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
1413
|
+
}]
|
|
1414
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1415
|
+
let DyteIcon = class DyteIcon {
|
|
1416
|
+
constructor(c, r, z) {
|
|
1417
|
+
this.z = z;
|
|
1418
|
+
c.detach();
|
|
1419
|
+
this.el = r.nativeElement;
|
|
1420
|
+
}
|
|
1421
|
+
};
|
|
1422
|
+
DyteIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteIcon, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1423
|
+
DyteIcon.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteIcon, selector: "dyte-icon", inputs: { icon: "icon", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1424
|
+
DyteIcon = __decorate([
|
|
1425
|
+
ProxyCmp({
|
|
1426
|
+
inputs: ['icon', 'size', 'variant']
|
|
1427
|
+
})
|
|
1428
|
+
], DyteIcon);
|
|
1429
|
+
export { DyteIcon };
|
|
1430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteIcon, decorators: [{
|
|
1431
|
+
type: Component,
|
|
1432
|
+
args: [{
|
|
1433
|
+
selector: 'dyte-icon',
|
|
1434
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1435
|
+
template: '<ng-content></ng-content>',
|
|
1436
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1437
|
+
inputs: ['icon', 'size', 'variant'],
|
|
1438
|
+
}]
|
|
1439
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1440
|
+
let DyteIdleScreen = class DyteIdleScreen {
|
|
1441
|
+
constructor(c, r, z) {
|
|
1442
|
+
this.z = z;
|
|
1443
|
+
c.detach();
|
|
1444
|
+
this.el = r.nativeElement;
|
|
1445
|
+
}
|
|
1446
|
+
};
|
|
1447
|
+
DyteIdleScreen.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteIdleScreen, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1448
|
+
DyteIdleScreen.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteIdleScreen, selector: "dyte-idle-screen", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1449
|
+
DyteIdleScreen = __decorate([
|
|
1450
|
+
ProxyCmp({
|
|
1451
|
+
inputs: ['config', 'iconPack', 'meeting', 't']
|
|
1452
|
+
})
|
|
1453
|
+
], DyteIdleScreen);
|
|
1454
|
+
export { DyteIdleScreen };
|
|
1455
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteIdleScreen, decorators: [{
|
|
1456
|
+
type: Component,
|
|
1457
|
+
args: [{
|
|
1458
|
+
selector: 'dyte-idle-screen',
|
|
1459
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1460
|
+
template: '<ng-content></ng-content>',
|
|
1461
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1462
|
+
inputs: ['config', 'iconPack', 'meeting', 't'],
|
|
1463
|
+
}]
|
|
1464
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1465
|
+
let DyteImageMessage = class DyteImageMessage {
|
|
1466
|
+
constructor(c, r, z) {
|
|
1467
|
+
this.z = z;
|
|
1468
|
+
c.detach();
|
|
1469
|
+
this.el = r.nativeElement;
|
|
1470
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1471
|
+
}
|
|
1472
|
+
};
|
|
1473
|
+
DyteImageMessage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1474
|
+
DyteImageMessage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteImageMessage, selector: "dyte-image-message", inputs: { iconPack: "iconPack", isContinued: "isContinued", message: "message", now: "now", showBubble: "showBubble", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1475
|
+
DyteImageMessage = __decorate([
|
|
1476
|
+
ProxyCmp({
|
|
1477
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't']
|
|
1478
|
+
})
|
|
1479
|
+
], DyteImageMessage);
|
|
1480
|
+
export { DyteImageMessage };
|
|
1481
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageMessage, decorators: [{
|
|
1482
|
+
type: Component,
|
|
1483
|
+
args: [{
|
|
1484
|
+
selector: 'dyte-image-message',
|
|
1485
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1486
|
+
template: '<ng-content></ng-content>',
|
|
1487
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1488
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't'],
|
|
1489
|
+
}]
|
|
1490
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1491
|
+
let DyteImageMessageView = class DyteImageMessageView {
|
|
1492
|
+
constructor(c, r, z) {
|
|
1493
|
+
this.z = z;
|
|
1494
|
+
c.detach();
|
|
1495
|
+
this.el = r.nativeElement;
|
|
1496
|
+
proxyOutputs(this, this.el, ['preview']);
|
|
1497
|
+
}
|
|
1498
|
+
};
|
|
1499
|
+
DyteImageMessageView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageMessageView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1500
|
+
DyteImageMessageView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteImageMessageView, selector: "dyte-image-message-view", inputs: { iconPack: "iconPack", t: "t", url: "url" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1501
|
+
DyteImageMessageView = __decorate([
|
|
1502
|
+
ProxyCmp({
|
|
1503
|
+
inputs: ['iconPack', 't', 'url']
|
|
1504
|
+
})
|
|
1505
|
+
], DyteImageMessageView);
|
|
1506
|
+
export { DyteImageMessageView };
|
|
1507
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageMessageView, decorators: [{
|
|
1508
|
+
type: Component,
|
|
1509
|
+
args: [{
|
|
1510
|
+
selector: 'dyte-image-message-view',
|
|
1511
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1512
|
+
template: '<ng-content></ng-content>',
|
|
1513
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1514
|
+
inputs: ['iconPack', 't', 'url'],
|
|
1515
|
+
}]
|
|
1516
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1517
|
+
let DyteImageViewer = class DyteImageViewer {
|
|
1518
|
+
constructor(c, r, z) {
|
|
1519
|
+
this.z = z;
|
|
1520
|
+
c.detach();
|
|
1521
|
+
this.el = r.nativeElement;
|
|
1522
|
+
proxyOutputs(this, this.el, ['close']);
|
|
1523
|
+
}
|
|
1524
|
+
};
|
|
1525
|
+
DyteImageViewer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageViewer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1526
|
+
DyteImageViewer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteImageViewer, selector: "dyte-image-viewer", inputs: { iconPack: "iconPack", image: "image", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1527
|
+
DyteImageViewer = __decorate([
|
|
1528
|
+
ProxyCmp({
|
|
1529
|
+
inputs: ['iconPack', 'image', 'size', 't']
|
|
1530
|
+
})
|
|
1531
|
+
], DyteImageViewer);
|
|
1532
|
+
export { DyteImageViewer };
|
|
1533
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteImageViewer, decorators: [{
|
|
1534
|
+
type: Component,
|
|
1535
|
+
args: [{
|
|
1536
|
+
selector: 'dyte-image-viewer',
|
|
1537
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1538
|
+
template: '<ng-content></ng-content>',
|
|
1539
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1540
|
+
inputs: ['iconPack', 'image', 'size', 't'],
|
|
1541
|
+
}]
|
|
1542
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1543
|
+
let DyteInformationTooltip = class DyteInformationTooltip {
|
|
1544
|
+
constructor(c, r, z) {
|
|
1545
|
+
this.z = z;
|
|
1546
|
+
c.detach();
|
|
1547
|
+
this.el = r.nativeElement;
|
|
1548
|
+
}
|
|
1549
|
+
};
|
|
1550
|
+
DyteInformationTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteInformationTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1551
|
+
DyteInformationTooltip.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteInformationTooltip, selector: "dyte-information-tooltip", inputs: { iconPack: "iconPack" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1552
|
+
DyteInformationTooltip = __decorate([
|
|
1553
|
+
ProxyCmp({
|
|
1554
|
+
inputs: ['iconPack']
|
|
1555
|
+
})
|
|
1556
|
+
], DyteInformationTooltip);
|
|
1557
|
+
export { DyteInformationTooltip };
|
|
1558
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteInformationTooltip, decorators: [{
|
|
1559
|
+
type: Component,
|
|
1560
|
+
args: [{
|
|
1561
|
+
selector: 'dyte-information-tooltip',
|
|
1562
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1563
|
+
template: '<ng-content></ng-content>',
|
|
1564
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1565
|
+
inputs: ['iconPack'],
|
|
1566
|
+
}]
|
|
1567
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1568
|
+
let DyteJoinStage = class DyteJoinStage {
|
|
1569
|
+
constructor(c, r, z) {
|
|
1570
|
+
this.z = z;
|
|
1571
|
+
c.detach();
|
|
1572
|
+
this.el = r.nativeElement;
|
|
1573
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate', 'dyteJoinStage', 'dyteLeaveStage']);
|
|
1574
|
+
}
|
|
1575
|
+
};
|
|
1576
|
+
DyteJoinStage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteJoinStage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1577
|
+
DyteJoinStage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteJoinStage, selector: "dyte-join-stage", inputs: { config: "config", dataConfig: "dataConfig", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1578
|
+
DyteJoinStage = __decorate([
|
|
1579
|
+
ProxyCmp({
|
|
1580
|
+
inputs: ['config', 'dataConfig', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
1581
|
+
})
|
|
1582
|
+
], DyteJoinStage);
|
|
1583
|
+
export { DyteJoinStage };
|
|
1584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteJoinStage, decorators: [{
|
|
1585
|
+
type: Component,
|
|
1586
|
+
args: [{
|
|
1587
|
+
selector: 'dyte-join-stage',
|
|
1588
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1589
|
+
template: '<ng-content></ng-content>',
|
|
1590
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1591
|
+
inputs: ['config', 'dataConfig', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
1592
|
+
}]
|
|
1593
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1594
|
+
let DyteLeaveButton = class DyteLeaveButton {
|
|
1595
|
+
constructor(c, r, z) {
|
|
1596
|
+
this.z = z;
|
|
1597
|
+
c.detach();
|
|
1598
|
+
this.el = r.nativeElement;
|
|
1599
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1600
|
+
}
|
|
1601
|
+
};
|
|
1602
|
+
DyteLeaveButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLeaveButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1603
|
+
DyteLeaveButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLeaveButton, selector: "dyte-leave-button", inputs: { iconPack: "iconPack", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1604
|
+
DyteLeaveButton = __decorate([
|
|
1605
|
+
ProxyCmp({
|
|
1606
|
+
inputs: ['iconPack', 'size', 't', 'variant']
|
|
1607
|
+
})
|
|
1608
|
+
], DyteLeaveButton);
|
|
1609
|
+
export { DyteLeaveButton };
|
|
1610
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLeaveButton, decorators: [{
|
|
1611
|
+
type: Component,
|
|
1612
|
+
args: [{
|
|
1613
|
+
selector: 'dyte-leave-button',
|
|
1614
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1615
|
+
template: '<ng-content></ng-content>',
|
|
1616
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1617
|
+
inputs: ['iconPack', 'size', 't', 'variant'],
|
|
1618
|
+
}]
|
|
1619
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1620
|
+
let DyteLeaveMeeting = class DyteLeaveMeeting {
|
|
1621
|
+
constructor(c, r, z) {
|
|
1622
|
+
this.z = z;
|
|
1623
|
+
c.detach();
|
|
1624
|
+
this.el = r.nativeElement;
|
|
1625
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1626
|
+
}
|
|
1627
|
+
};
|
|
1628
|
+
DyteLeaveMeeting.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLeaveMeeting, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1629
|
+
DyteLeaveMeeting.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLeaveMeeting, selector: "dyte-leave-meeting", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1630
|
+
DyteLeaveMeeting = __decorate([
|
|
1631
|
+
ProxyCmp({
|
|
1632
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
1633
|
+
})
|
|
1634
|
+
], DyteLeaveMeeting);
|
|
1635
|
+
export { DyteLeaveMeeting };
|
|
1636
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLeaveMeeting, decorators: [{
|
|
1637
|
+
type: Component,
|
|
1638
|
+
args: [{
|
|
1639
|
+
selector: 'dyte-leave-meeting',
|
|
1640
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1641
|
+
template: '<ng-content></ng-content>',
|
|
1642
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1643
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
1644
|
+
}]
|
|
1645
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1646
|
+
let DyteLivestreamIndicator = class DyteLivestreamIndicator {
|
|
1647
|
+
constructor(c, r, z) {
|
|
1648
|
+
this.z = z;
|
|
1649
|
+
c.detach();
|
|
1650
|
+
this.el = r.nativeElement;
|
|
1651
|
+
}
|
|
1652
|
+
};
|
|
1653
|
+
DyteLivestreamIndicator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamIndicator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1654
|
+
DyteLivestreamIndicator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLivestreamIndicator, selector: "dyte-livestream-indicator", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1655
|
+
DyteLivestreamIndicator = __decorate([
|
|
1656
|
+
ProxyCmp({
|
|
1657
|
+
inputs: ['iconPack', 'meeting', 'size', 't']
|
|
1658
|
+
})
|
|
1659
|
+
], DyteLivestreamIndicator);
|
|
1660
|
+
export { DyteLivestreamIndicator };
|
|
1661
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamIndicator, decorators: [{
|
|
1662
|
+
type: Component,
|
|
1663
|
+
args: [{
|
|
1664
|
+
selector: 'dyte-livestream-indicator',
|
|
1665
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1666
|
+
template: '<ng-content></ng-content>',
|
|
1667
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1668
|
+
inputs: ['iconPack', 'meeting', 'size', 't'],
|
|
1669
|
+
}]
|
|
1670
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1671
|
+
let DyteLivestreamPlayer = class DyteLivestreamPlayer {
|
|
1672
|
+
constructor(c, r, z) {
|
|
1673
|
+
this.z = z;
|
|
1674
|
+
c.detach();
|
|
1675
|
+
this.el = r.nativeElement;
|
|
1676
|
+
proxyOutputs(this, this.el, ['dyteAPIError']);
|
|
1677
|
+
}
|
|
1678
|
+
};
|
|
1679
|
+
DyteLivestreamPlayer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamPlayer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1680
|
+
DyteLivestreamPlayer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLivestreamPlayer, selector: "dyte-livestream-player", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1681
|
+
DyteLivestreamPlayer = __decorate([
|
|
1682
|
+
ProxyCmp({
|
|
1683
|
+
inputs: ['iconPack', 'meeting', 'size', 't']
|
|
1684
|
+
})
|
|
1685
|
+
], DyteLivestreamPlayer);
|
|
1686
|
+
export { DyteLivestreamPlayer };
|
|
1687
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamPlayer, decorators: [{
|
|
1688
|
+
type: Component,
|
|
1689
|
+
args: [{
|
|
1690
|
+
selector: 'dyte-livestream-player',
|
|
1691
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1692
|
+
template: '<ng-content></ng-content>',
|
|
1693
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1694
|
+
inputs: ['iconPack', 'meeting', 'size', 't'],
|
|
1695
|
+
}]
|
|
1696
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1697
|
+
let DyteLivestreamToggle = class DyteLivestreamToggle {
|
|
1698
|
+
constructor(c, r, z) {
|
|
1699
|
+
this.z = z;
|
|
1700
|
+
c.detach();
|
|
1701
|
+
this.el = r.nativeElement;
|
|
1702
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate', 'dyteAPIError']);
|
|
1703
|
+
}
|
|
1704
|
+
};
|
|
1705
|
+
DyteLivestreamToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1706
|
+
DyteLivestreamToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLivestreamToggle, selector: "dyte-livestream-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1707
|
+
DyteLivestreamToggle = __decorate([
|
|
1708
|
+
ProxyCmp({
|
|
1709
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
1710
|
+
})
|
|
1711
|
+
], DyteLivestreamToggle);
|
|
1712
|
+
export { DyteLivestreamToggle };
|
|
1713
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLivestreamToggle, decorators: [{
|
|
1714
|
+
type: Component,
|
|
1715
|
+
args: [{
|
|
1716
|
+
selector: 'dyte-livestream-toggle',
|
|
1717
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1718
|
+
template: '<ng-content></ng-content>',
|
|
1719
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1720
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
1721
|
+
}]
|
|
1722
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1723
|
+
let DyteLogo = class DyteLogo {
|
|
1724
|
+
constructor(c, r, z) {
|
|
1725
|
+
this.z = z;
|
|
1726
|
+
c.detach();
|
|
1727
|
+
this.el = r.nativeElement;
|
|
1728
|
+
}
|
|
1729
|
+
};
|
|
1730
|
+
DyteLogo.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLogo, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1731
|
+
DyteLogo.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteLogo, selector: "dyte-logo", inputs: { config: "config", logoUrl: "logoUrl", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1732
|
+
DyteLogo = __decorate([
|
|
1733
|
+
ProxyCmp({
|
|
1734
|
+
inputs: ['config', 'logoUrl', 'meeting', 't']
|
|
1735
|
+
})
|
|
1736
|
+
], DyteLogo);
|
|
1737
|
+
export { DyteLogo };
|
|
1738
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteLogo, decorators: [{
|
|
1739
|
+
type: Component,
|
|
1740
|
+
args: [{
|
|
1741
|
+
selector: 'dyte-logo',
|
|
1742
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1743
|
+
template: '<ng-content></ng-content>',
|
|
1744
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1745
|
+
inputs: ['config', 'logoUrl', 'meeting', 't'],
|
|
1746
|
+
}]
|
|
1747
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1748
|
+
let DyteMarkdownView = class DyteMarkdownView {
|
|
1749
|
+
constructor(c, r, z) {
|
|
1750
|
+
this.z = z;
|
|
1751
|
+
c.detach();
|
|
1752
|
+
this.el = r.nativeElement;
|
|
1753
|
+
}
|
|
1754
|
+
};
|
|
1755
|
+
DyteMarkdownView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMarkdownView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1756
|
+
DyteMarkdownView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMarkdownView, selector: "dyte-markdown-view", inputs: { maxLength: "maxLength", text: "text" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1757
|
+
DyteMarkdownView = __decorate([
|
|
1758
|
+
ProxyCmp({
|
|
1759
|
+
inputs: ['maxLength', 'text']
|
|
1760
|
+
})
|
|
1761
|
+
], DyteMarkdownView);
|
|
1762
|
+
export { DyteMarkdownView };
|
|
1763
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMarkdownView, decorators: [{
|
|
1764
|
+
type: Component,
|
|
1765
|
+
args: [{
|
|
1766
|
+
selector: 'dyte-markdown-view',
|
|
1767
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1768
|
+
template: '<ng-content></ng-content>',
|
|
1769
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1770
|
+
inputs: ['maxLength', 'text'],
|
|
1771
|
+
}]
|
|
1772
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1773
|
+
let DyteMeeting = class DyteMeeting {
|
|
1774
|
+
constructor(c, r, z) {
|
|
1775
|
+
this.z = z;
|
|
1776
|
+
c.detach();
|
|
1777
|
+
this.el = r.nativeElement;
|
|
1778
|
+
proxyOutputs(this, this.el, ['dyteStatesUpdate']);
|
|
1779
|
+
}
|
|
1780
|
+
};
|
|
1781
|
+
DyteMeeting.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMeeting, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1782
|
+
DyteMeeting.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMeeting, selector: "dyte-meeting", inputs: { applyDesignSystem: "applyDesignSystem", config: "config", gridLayout: "gridLayout", iconPack: "iconPack", leaveOnUnmount: "leaveOnUnmount", loadConfigFromPreset: "loadConfigFromPreset", meeting: "meeting", mode: "mode", showSetupScreen: "showSetupScreen", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1783
|
+
DyteMeeting = __decorate([
|
|
1784
|
+
ProxyCmp({
|
|
1785
|
+
inputs: ['applyDesignSystem', 'config', 'gridLayout', 'iconPack', 'leaveOnUnmount', 'loadConfigFromPreset', 'meeting', 'mode', 'showSetupScreen', 'size', 't']
|
|
1786
|
+
})
|
|
1787
|
+
], DyteMeeting);
|
|
1788
|
+
export { DyteMeeting };
|
|
1789
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMeeting, decorators: [{
|
|
1790
|
+
type: Component,
|
|
1791
|
+
args: [{
|
|
1792
|
+
selector: 'dyte-meeting',
|
|
1793
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1794
|
+
template: '<ng-content></ng-content>',
|
|
1795
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1796
|
+
inputs: ['applyDesignSystem', 'config', 'gridLayout', 'iconPack', 'leaveOnUnmount', 'loadConfigFromPreset', 'meeting', 'mode', 'showSetupScreen', 'size', 't'],
|
|
1797
|
+
}]
|
|
1798
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1799
|
+
let DyteMeetingTitle = class DyteMeetingTitle {
|
|
1800
|
+
constructor(c, r, z) {
|
|
1801
|
+
this.z = z;
|
|
1802
|
+
c.detach();
|
|
1803
|
+
this.el = r.nativeElement;
|
|
1804
|
+
}
|
|
1805
|
+
};
|
|
1806
|
+
DyteMeetingTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMeetingTitle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1807
|
+
DyteMeetingTitle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMeetingTitle, selector: "dyte-meeting-title", inputs: { iconPack: "iconPack", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1808
|
+
DyteMeetingTitle = __decorate([
|
|
1809
|
+
ProxyCmp({
|
|
1810
|
+
inputs: ['iconPack', 'meeting', 't']
|
|
1811
|
+
})
|
|
1812
|
+
], DyteMeetingTitle);
|
|
1813
|
+
export { DyteMeetingTitle };
|
|
1814
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMeetingTitle, decorators: [{
|
|
1815
|
+
type: Component,
|
|
1816
|
+
args: [{
|
|
1817
|
+
selector: 'dyte-meeting-title',
|
|
1818
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1819
|
+
template: '<ng-content></ng-content>',
|
|
1820
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1821
|
+
inputs: ['iconPack', 'meeting', 't'],
|
|
1822
|
+
}]
|
|
1823
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1824
|
+
let DyteMenu = class DyteMenu {
|
|
1825
|
+
constructor(c, r, z) {
|
|
1826
|
+
this.z = z;
|
|
1827
|
+
c.detach();
|
|
1828
|
+
this.el = r.nativeElement;
|
|
1829
|
+
}
|
|
1830
|
+
};
|
|
1831
|
+
DyteMenu.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenu, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1832
|
+
DyteMenu.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMenu, selector: "dyte-menu", inputs: { iconPack: "iconPack", offset: "offset", placement: "placement", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1833
|
+
DyteMenu = __decorate([
|
|
1834
|
+
ProxyCmp({
|
|
1835
|
+
inputs: ['iconPack', 'offset', 'placement', 'size', 't']
|
|
1836
|
+
})
|
|
1837
|
+
], DyteMenu);
|
|
1838
|
+
export { DyteMenu };
|
|
1839
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenu, decorators: [{
|
|
1840
|
+
type: Component,
|
|
1841
|
+
args: [{
|
|
1842
|
+
selector: 'dyte-menu',
|
|
1843
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1844
|
+
template: '<ng-content></ng-content>',
|
|
1845
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1846
|
+
inputs: ['iconPack', 'offset', 'placement', 'size', 't'],
|
|
1847
|
+
}]
|
|
1848
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1849
|
+
let DyteMenuItem = class DyteMenuItem {
|
|
1850
|
+
constructor(c, r, z) {
|
|
1851
|
+
this.z = z;
|
|
1852
|
+
c.detach();
|
|
1853
|
+
this.el = r.nativeElement;
|
|
1854
|
+
}
|
|
1855
|
+
};
|
|
1856
|
+
DyteMenuItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenuItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1857
|
+
DyteMenuItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMenuItem, selector: "dyte-menu-item", inputs: { iconPack: "iconPack", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1858
|
+
DyteMenuItem = __decorate([
|
|
1859
|
+
ProxyCmp({
|
|
1860
|
+
inputs: ['iconPack', 'size', 't']
|
|
1861
|
+
})
|
|
1862
|
+
], DyteMenuItem);
|
|
1863
|
+
export { DyteMenuItem };
|
|
1864
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenuItem, decorators: [{
|
|
1865
|
+
type: Component,
|
|
1866
|
+
args: [{
|
|
1867
|
+
selector: 'dyte-menu-item',
|
|
1868
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1869
|
+
template: '<ng-content></ng-content>',
|
|
1870
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1871
|
+
inputs: ['iconPack', 'size', 't'],
|
|
1872
|
+
}]
|
|
1873
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1874
|
+
let DyteMenuList = class DyteMenuList {
|
|
1875
|
+
constructor(c, r, z) {
|
|
1876
|
+
this.z = z;
|
|
1877
|
+
c.detach();
|
|
1878
|
+
this.el = r.nativeElement;
|
|
1879
|
+
}
|
|
1880
|
+
};
|
|
1881
|
+
DyteMenuList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenuList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1882
|
+
DyteMenuList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMenuList, selector: "dyte-menu-list", inputs: { iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1883
|
+
DyteMenuList = __decorate([
|
|
1884
|
+
ProxyCmp({
|
|
1885
|
+
inputs: ['iconPack', 't']
|
|
1886
|
+
})
|
|
1887
|
+
], DyteMenuList);
|
|
1888
|
+
export { DyteMenuList };
|
|
1889
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMenuList, decorators: [{
|
|
1890
|
+
type: Component,
|
|
1891
|
+
args: [{
|
|
1892
|
+
selector: 'dyte-menu-list',
|
|
1893
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1894
|
+
template: '<ng-content></ng-content>',
|
|
1895
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1896
|
+
inputs: ['iconPack', 't'],
|
|
1897
|
+
}]
|
|
1898
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1899
|
+
let DyteMessageListView = class DyteMessageListView {
|
|
1900
|
+
constructor(c, r, z) {
|
|
1901
|
+
this.z = z;
|
|
1902
|
+
c.detach();
|
|
1903
|
+
this.el = r.nativeElement;
|
|
1904
|
+
}
|
|
1905
|
+
};
|
|
1906
|
+
DyteMessageListView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMessageListView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1907
|
+
DyteMessageListView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMessageListView, selector: "dyte-message-list-view", inputs: { estimateItemSize: "estimateItemSize", iconPack: "iconPack", loadMore: "loadMore", messages: "messages", renderer: "renderer", visibleItemsCount: "visibleItemsCount" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1908
|
+
DyteMessageListView = __decorate([
|
|
1909
|
+
ProxyCmp({
|
|
1910
|
+
inputs: ['estimateItemSize', 'iconPack', 'loadMore', 'messages', 'renderer', 'visibleItemsCount']
|
|
1911
|
+
})
|
|
1912
|
+
], DyteMessageListView);
|
|
1913
|
+
export { DyteMessageListView };
|
|
1914
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMessageListView, decorators: [{
|
|
1915
|
+
type: Component,
|
|
1916
|
+
args: [{
|
|
1917
|
+
selector: 'dyte-message-list-view',
|
|
1918
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1919
|
+
template: '<ng-content></ng-content>',
|
|
1920
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1921
|
+
inputs: ['estimateItemSize', 'iconPack', 'loadMore', 'messages', 'renderer', 'visibleItemsCount'],
|
|
1922
|
+
}]
|
|
1923
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1924
|
+
let DyteMessageView = class DyteMessageView {
|
|
1925
|
+
constructor(c, r, z) {
|
|
1926
|
+
this.z = z;
|
|
1927
|
+
c.detach();
|
|
1928
|
+
this.el = r.nativeElement;
|
|
1929
|
+
proxyOutputs(this, this.el, ['action']);
|
|
1930
|
+
}
|
|
1931
|
+
};
|
|
1932
|
+
DyteMessageView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMessageView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1933
|
+
DyteMessageView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMessageView, selector: "dyte-message-view", inputs: { actions: "actions", authorName: "authorName", avatarUrl: "avatarUrl", hideAuthorName: "hideAuthorName", hideAvatar: "hideAvatar", hideMetadata: "hideMetadata", iconPack: "iconPack", time: "time", variant: "variant", viewType: "viewType" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1934
|
+
DyteMessageView = __decorate([
|
|
1935
|
+
ProxyCmp({
|
|
1936
|
+
inputs: ['actions', 'authorName', 'avatarUrl', 'hideAuthorName', 'hideAvatar', 'hideMetadata', 'iconPack', 'time', 'variant', 'viewType']
|
|
1937
|
+
})
|
|
1938
|
+
], DyteMessageView);
|
|
1939
|
+
export { DyteMessageView };
|
|
1940
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMessageView, decorators: [{
|
|
1941
|
+
type: Component,
|
|
1942
|
+
args: [{
|
|
1943
|
+
selector: 'dyte-message-view',
|
|
1944
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1945
|
+
template: '<ng-content></ng-content>',
|
|
1946
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1947
|
+
inputs: ['actions', 'authorName', 'avatarUrl', 'hideAuthorName', 'hideAvatar', 'hideMetadata', 'iconPack', 'time', 'variant', 'viewType'],
|
|
1948
|
+
}]
|
|
1949
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1950
|
+
let DyteMicToggle = class DyteMicToggle {
|
|
1951
|
+
constructor(c, r, z) {
|
|
1952
|
+
this.z = z;
|
|
1953
|
+
c.detach();
|
|
1954
|
+
this.el = r.nativeElement;
|
|
1955
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
1956
|
+
}
|
|
1957
|
+
};
|
|
1958
|
+
DyteMicToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMicToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1959
|
+
DyteMicToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMicToggle, selector: "dyte-mic-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1960
|
+
DyteMicToggle = __decorate([
|
|
1961
|
+
ProxyCmp({
|
|
1962
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
1963
|
+
})
|
|
1964
|
+
], DyteMicToggle);
|
|
1965
|
+
export { DyteMicToggle };
|
|
1966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMicToggle, decorators: [{
|
|
1967
|
+
type: Component,
|
|
1968
|
+
args: [{
|
|
1969
|
+
selector: 'dyte-mic-toggle',
|
|
1970
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1971
|
+
template: '<ng-content></ng-content>',
|
|
1972
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1973
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
1974
|
+
}]
|
|
1975
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1976
|
+
let DyteMicrophoneSelector = class DyteMicrophoneSelector {
|
|
1977
|
+
constructor(c, r, z) {
|
|
1978
|
+
this.z = z;
|
|
1979
|
+
c.detach();
|
|
1980
|
+
this.el = r.nativeElement;
|
|
1981
|
+
}
|
|
1982
|
+
};
|
|
1983
|
+
DyteMicrophoneSelector.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMicrophoneSelector, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1984
|
+
DyteMicrophoneSelector.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMicrophoneSelector, selector: "dyte-microphone-selector", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1985
|
+
DyteMicrophoneSelector = __decorate([
|
|
1986
|
+
ProxyCmp({
|
|
1987
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
1988
|
+
})
|
|
1989
|
+
], DyteMicrophoneSelector);
|
|
1990
|
+
export { DyteMicrophoneSelector };
|
|
1991
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMicrophoneSelector, decorators: [{
|
|
1992
|
+
type: Component,
|
|
1993
|
+
args: [{
|
|
1994
|
+
selector: 'dyte-microphone-selector',
|
|
1995
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1996
|
+
template: '<ng-content></ng-content>',
|
|
1997
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1998
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
1999
|
+
}]
|
|
2000
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2001
|
+
let DyteMixedGrid = class DyteMixedGrid {
|
|
2002
|
+
constructor(c, r, z) {
|
|
2003
|
+
this.z = z;
|
|
2004
|
+
c.detach();
|
|
2005
|
+
this.el = r.nativeElement;
|
|
2006
|
+
}
|
|
2007
|
+
};
|
|
2008
|
+
DyteMixedGrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMixedGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2009
|
+
DyteMixedGrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMixedGrid, selector: "dyte-mixed-grid", inputs: { aspectRatio: "aspectRatio", config: "config", gap: "gap", gridSize: "gridSize", iconPack: "iconPack", layout: "layout", meeting: "meeting", participants: "participants", pinnedParticipants: "pinnedParticipants", plugins: "plugins", screenShareParticipants: "screenShareParticipants", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2010
|
+
DyteMixedGrid = __decorate([
|
|
2011
|
+
ProxyCmp({
|
|
2012
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'participants', 'pinnedParticipants', 'plugins', 'screenShareParticipants', 'size', 'states', 't']
|
|
2013
|
+
})
|
|
2014
|
+
], DyteMixedGrid);
|
|
2015
|
+
export { DyteMixedGrid };
|
|
2016
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMixedGrid, decorators: [{
|
|
2017
|
+
type: Component,
|
|
2018
|
+
args: [{
|
|
2019
|
+
selector: 'dyte-mixed-grid',
|
|
2020
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2021
|
+
template: '<ng-content></ng-content>',
|
|
2022
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2023
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'participants', 'pinnedParticipants', 'plugins', 'screenShareParticipants', 'size', 'states', 't'],
|
|
2024
|
+
}]
|
|
2025
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2026
|
+
let DyteMoreToggle = class DyteMoreToggle {
|
|
2027
|
+
constructor(c, r, z) {
|
|
2028
|
+
this.z = z;
|
|
2029
|
+
c.detach();
|
|
2030
|
+
this.el = r.nativeElement;
|
|
2031
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2032
|
+
}
|
|
2033
|
+
};
|
|
2034
|
+
DyteMoreToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMoreToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2035
|
+
DyteMoreToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMoreToggle, selector: "dyte-more-toggle", inputs: { iconPack: "iconPack", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2036
|
+
DyteMoreToggle = __decorate([
|
|
2037
|
+
ProxyCmp({
|
|
2038
|
+
inputs: ['iconPack', 'size', 'states', 't']
|
|
2039
|
+
})
|
|
2040
|
+
], DyteMoreToggle);
|
|
2041
|
+
export { DyteMoreToggle };
|
|
2042
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMoreToggle, decorators: [{
|
|
2043
|
+
type: Component,
|
|
2044
|
+
args: [{
|
|
2045
|
+
selector: 'dyte-more-toggle',
|
|
2046
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2047
|
+
template: '<ng-content></ng-content>',
|
|
2048
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2049
|
+
inputs: ['iconPack', 'size', 'states', 't'],
|
|
2050
|
+
}]
|
|
2051
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2052
|
+
let DyteMuteAllButton = class DyteMuteAllButton {
|
|
2053
|
+
constructor(c, r, z) {
|
|
2054
|
+
this.z = z;
|
|
2055
|
+
c.detach();
|
|
2056
|
+
this.el = r.nativeElement;
|
|
2057
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2058
|
+
}
|
|
2059
|
+
};
|
|
2060
|
+
DyteMuteAllButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMuteAllButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2061
|
+
DyteMuteAllButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMuteAllButton, selector: "dyte-mute-all-button", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2062
|
+
DyteMuteAllButton = __decorate([
|
|
2063
|
+
ProxyCmp({
|
|
2064
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant']
|
|
2065
|
+
})
|
|
2066
|
+
], DyteMuteAllButton);
|
|
2067
|
+
export { DyteMuteAllButton };
|
|
2068
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMuteAllButton, decorators: [{
|
|
2069
|
+
type: Component,
|
|
2070
|
+
args: [{
|
|
2071
|
+
selector: 'dyte-mute-all-button',
|
|
2072
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2073
|
+
template: '<ng-content></ng-content>',
|
|
2074
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2075
|
+
inputs: ['iconPack', 'meeting', 'size', 't', 'variant'],
|
|
2076
|
+
}]
|
|
2077
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2078
|
+
let DyteMuteAllConfirmation = class DyteMuteAllConfirmation {
|
|
2079
|
+
constructor(c, r, z) {
|
|
2080
|
+
this.z = z;
|
|
2081
|
+
c.detach();
|
|
2082
|
+
this.el = r.nativeElement;
|
|
2083
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2084
|
+
}
|
|
2085
|
+
};
|
|
2086
|
+
DyteMuteAllConfirmation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMuteAllConfirmation, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2087
|
+
DyteMuteAllConfirmation.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteMuteAllConfirmation, selector: "dyte-mute-all-confirmation", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2088
|
+
DyteMuteAllConfirmation = __decorate([
|
|
2089
|
+
ProxyCmp({
|
|
2090
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
2091
|
+
})
|
|
2092
|
+
], DyteMuteAllConfirmation);
|
|
2093
|
+
export { DyteMuteAllConfirmation };
|
|
2094
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteMuteAllConfirmation, decorators: [{
|
|
2095
|
+
type: Component,
|
|
2096
|
+
args: [{
|
|
2097
|
+
selector: 'dyte-mute-all-confirmation',
|
|
2098
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2099
|
+
template: '<ng-content></ng-content>',
|
|
2100
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2101
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
2102
|
+
}]
|
|
2103
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2104
|
+
let DyteNameTag = class DyteNameTag {
|
|
2105
|
+
constructor(c, r, z) {
|
|
2106
|
+
this.z = z;
|
|
2107
|
+
c.detach();
|
|
2108
|
+
this.el = r.nativeElement;
|
|
2109
|
+
}
|
|
2110
|
+
};
|
|
2111
|
+
DyteNameTag.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNameTag, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2112
|
+
DyteNameTag.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteNameTag, selector: "dyte-name-tag", inputs: { iconPack: "iconPack", isScreenShare: "isScreenShare", meeting: "meeting", participant: "participant", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2113
|
+
DyteNameTag = __decorate([
|
|
2114
|
+
ProxyCmp({
|
|
2115
|
+
inputs: ['iconPack', 'isScreenShare', 'meeting', 'participant', 'size', 't', 'variant']
|
|
2116
|
+
})
|
|
2117
|
+
], DyteNameTag);
|
|
2118
|
+
export { DyteNameTag };
|
|
2119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNameTag, decorators: [{
|
|
2120
|
+
type: Component,
|
|
2121
|
+
args: [{
|
|
2122
|
+
selector: 'dyte-name-tag',
|
|
2123
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2124
|
+
template: '<ng-content></ng-content>',
|
|
2125
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2126
|
+
inputs: ['iconPack', 'isScreenShare', 'meeting', 'participant', 'size', 't', 'variant'],
|
|
2127
|
+
}]
|
|
2128
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2129
|
+
let DyteNetworkIndicator = class DyteNetworkIndicator {
|
|
2130
|
+
constructor(c, r, z) {
|
|
2131
|
+
this.z = z;
|
|
2132
|
+
c.detach();
|
|
2133
|
+
this.el = r.nativeElement;
|
|
2134
|
+
}
|
|
2135
|
+
};
|
|
2136
|
+
DyteNetworkIndicator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNetworkIndicator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2137
|
+
DyteNetworkIndicator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteNetworkIndicator, selector: "dyte-network-indicator", inputs: { iconPack: "iconPack", isScreenShare: "isScreenShare", meeting: "meeting", participant: "participant", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2138
|
+
DyteNetworkIndicator = __decorate([
|
|
2139
|
+
ProxyCmp({
|
|
2140
|
+
inputs: ['iconPack', 'isScreenShare', 'meeting', 'participant', 't']
|
|
2141
|
+
})
|
|
2142
|
+
], DyteNetworkIndicator);
|
|
2143
|
+
export { DyteNetworkIndicator };
|
|
2144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNetworkIndicator, decorators: [{
|
|
2145
|
+
type: Component,
|
|
2146
|
+
args: [{
|
|
2147
|
+
selector: 'dyte-network-indicator',
|
|
2148
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2149
|
+
template: '<ng-content></ng-content>',
|
|
2150
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2151
|
+
inputs: ['iconPack', 'isScreenShare', 'meeting', 'participant', 't'],
|
|
2152
|
+
}]
|
|
2153
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2154
|
+
let DyteNotification = class DyteNotification {
|
|
2155
|
+
constructor(c, r, z) {
|
|
2156
|
+
this.z = z;
|
|
2157
|
+
c.detach();
|
|
2158
|
+
this.el = r.nativeElement;
|
|
2159
|
+
proxyOutputs(this, this.el, ['dyteNotificationDismiss']);
|
|
2160
|
+
}
|
|
2161
|
+
};
|
|
2162
|
+
DyteNotification.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNotification, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2163
|
+
DyteNotification.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteNotification, selector: "dyte-notification", inputs: { iconPack: "iconPack", notification: "notification", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2164
|
+
DyteNotification = __decorate([
|
|
2165
|
+
ProxyCmp({
|
|
2166
|
+
inputs: ['iconPack', 'notification', 'size', 't']
|
|
2167
|
+
})
|
|
2168
|
+
], DyteNotification);
|
|
2169
|
+
export { DyteNotification };
|
|
2170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNotification, decorators: [{
|
|
2171
|
+
type: Component,
|
|
2172
|
+
args: [{
|
|
2173
|
+
selector: 'dyte-notification',
|
|
2174
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2175
|
+
template: '<ng-content></ng-content>',
|
|
2176
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2177
|
+
inputs: ['iconPack', 'notification', 'size', 't'],
|
|
2178
|
+
}]
|
|
2179
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2180
|
+
let DyteNotifications = class DyteNotifications {
|
|
2181
|
+
constructor(c, r, z) {
|
|
2182
|
+
this.z = z;
|
|
2183
|
+
c.detach();
|
|
2184
|
+
this.el = r.nativeElement;
|
|
2185
|
+
}
|
|
2186
|
+
};
|
|
2187
|
+
DyteNotifications.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNotifications, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2188
|
+
DyteNotifications.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteNotifications, selector: "dyte-notifications", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2189
|
+
DyteNotifications = __decorate([
|
|
2190
|
+
ProxyCmp({
|
|
2191
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
2192
|
+
})
|
|
2193
|
+
], DyteNotifications);
|
|
2194
|
+
export { DyteNotifications };
|
|
2195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteNotifications, decorators: [{
|
|
2196
|
+
type: Component,
|
|
2197
|
+
args: [{
|
|
2198
|
+
selector: 'dyte-notifications',
|
|
2199
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2200
|
+
template: '<ng-content></ng-content>',
|
|
2201
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2202
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
2203
|
+
}]
|
|
2204
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2205
|
+
let DyteOverlayModal = class DyteOverlayModal {
|
|
2206
|
+
constructor(c, r, z) {
|
|
2207
|
+
this.z = z;
|
|
2208
|
+
c.detach();
|
|
2209
|
+
this.el = r.nativeElement;
|
|
2210
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2211
|
+
}
|
|
2212
|
+
};
|
|
2213
|
+
DyteOverlayModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteOverlayModal, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2214
|
+
DyteOverlayModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteOverlayModal, selector: "dyte-overlay-modal", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2215
|
+
DyteOverlayModal = __decorate([
|
|
2216
|
+
ProxyCmp({
|
|
2217
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
2218
|
+
})
|
|
2219
|
+
], DyteOverlayModal);
|
|
2220
|
+
export { DyteOverlayModal };
|
|
2221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteOverlayModal, decorators: [{
|
|
2222
|
+
type: Component,
|
|
2223
|
+
args: [{
|
|
2224
|
+
selector: 'dyte-overlay-modal',
|
|
2225
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2226
|
+
template: '<ng-content></ng-content>',
|
|
2227
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2228
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
2229
|
+
}]
|
|
2230
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2231
|
+
let DytePaginatedList = class DytePaginatedList {
|
|
2232
|
+
constructor(c, r, z) {
|
|
2233
|
+
this.z = z;
|
|
2234
|
+
c.detach();
|
|
2235
|
+
this.el = r.nativeElement;
|
|
2236
|
+
}
|
|
2237
|
+
};
|
|
2238
|
+
DytePaginatedList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePaginatedList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2239
|
+
DytePaginatedList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePaginatedList, selector: "dyte-paginated-list", inputs: { autoScroll: "autoScroll", createNodes: "createNodes", emptyListLabel: "emptyListLabel", fetchData: "fetchData", iconPack: "iconPack", pageSize: "pageSize", pagesAllowed: "pagesAllowed", selectedItemId: "selectedItemId", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2240
|
+
DytePaginatedList = __decorate([
|
|
2241
|
+
ProxyCmp({
|
|
2242
|
+
inputs: ['autoScroll', 'createNodes', 'emptyListLabel', 'fetchData', 'iconPack', 'pageSize', 'pagesAllowed', 'selectedItemId', 't'],
|
|
2243
|
+
methods: ['onNewNode', 'onNodeDelete', 'onNodeUpdate']
|
|
2244
|
+
})
|
|
2245
|
+
], DytePaginatedList);
|
|
2246
|
+
export { DytePaginatedList };
|
|
2247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePaginatedList, decorators: [{
|
|
2248
|
+
type: Component,
|
|
2249
|
+
args: [{
|
|
2250
|
+
selector: 'dyte-paginated-list',
|
|
2251
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2252
|
+
template: '<ng-content></ng-content>',
|
|
2253
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2254
|
+
inputs: ['autoScroll', 'createNodes', 'emptyListLabel', 'fetchData', 'iconPack', 'pageSize', 'pagesAllowed', 'selectedItemId', 't'],
|
|
2255
|
+
}]
|
|
2256
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2257
|
+
let DyteParticipant = class DyteParticipant {
|
|
2258
|
+
constructor(c, r, z) {
|
|
2259
|
+
this.z = z;
|
|
2260
|
+
c.detach();
|
|
2261
|
+
this.el = r.nativeElement;
|
|
2262
|
+
proxyOutputs(this, this.el, ['dyteSendNotification']);
|
|
2263
|
+
}
|
|
2264
|
+
};
|
|
2265
|
+
DyteParticipant.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipant, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2266
|
+
DyteParticipant.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipant, selector: "dyte-participant", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", participant: "participant", states: "states", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2267
|
+
DyteParticipant = __decorate([
|
|
2268
|
+
ProxyCmp({
|
|
2269
|
+
inputs: ['config', 'iconPack', 'meeting', 'participant', 'states', 't', 'view']
|
|
2270
|
+
})
|
|
2271
|
+
], DyteParticipant);
|
|
2272
|
+
export { DyteParticipant };
|
|
2273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipant, decorators: [{
|
|
2274
|
+
type: Component,
|
|
2275
|
+
args: [{
|
|
2276
|
+
selector: 'dyte-participant',
|
|
2277
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2278
|
+
template: '<ng-content></ng-content>',
|
|
2279
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2280
|
+
inputs: ['config', 'iconPack', 'meeting', 'participant', 'states', 't', 'view'],
|
|
2281
|
+
}]
|
|
2282
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2283
|
+
let DyteParticipantCount = class DyteParticipantCount {
|
|
2284
|
+
constructor(c, r, z) {
|
|
2285
|
+
this.z = z;
|
|
2286
|
+
c.detach();
|
|
2287
|
+
this.el = r.nativeElement;
|
|
2288
|
+
}
|
|
2289
|
+
};
|
|
2290
|
+
DyteParticipantCount.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantCount, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2291
|
+
DyteParticipantCount.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantCount, selector: "dyte-participant-count", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2292
|
+
DyteParticipantCount = __decorate([
|
|
2293
|
+
ProxyCmp({
|
|
2294
|
+
inputs: ['iconPack', 'meeting', 'size', 't']
|
|
2295
|
+
})
|
|
2296
|
+
], DyteParticipantCount);
|
|
2297
|
+
export { DyteParticipantCount };
|
|
2298
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantCount, decorators: [{
|
|
2299
|
+
type: Component,
|
|
2300
|
+
args: [{
|
|
2301
|
+
selector: 'dyte-participant-count',
|
|
2302
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2303
|
+
template: '<ng-content></ng-content>',
|
|
2304
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2305
|
+
inputs: ['iconPack', 'meeting', 'size', 't'],
|
|
2306
|
+
}]
|
|
2307
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2308
|
+
let DyteParticipantSetup = class DyteParticipantSetup {
|
|
2309
|
+
constructor(c, r, z) {
|
|
2310
|
+
this.z = z;
|
|
2311
|
+
c.detach();
|
|
2312
|
+
this.el = r.nativeElement;
|
|
2313
|
+
}
|
|
2314
|
+
};
|
|
2315
|
+
DyteParticipantSetup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantSetup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2316
|
+
DyteParticipantSetup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantSetup, selector: "dyte-participant-setup", inputs: { config: "config", iconPack: "iconPack", isPreview: "isPreview", nameTagPosition: "nameTagPosition", participant: "participant", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2317
|
+
DyteParticipantSetup = __decorate([
|
|
2318
|
+
ProxyCmp({
|
|
2319
|
+
inputs: ['config', 'iconPack', 'isPreview', 'nameTagPosition', 'participant', 'size', 'states', 't', 'variant']
|
|
2320
|
+
})
|
|
2321
|
+
], DyteParticipantSetup);
|
|
2322
|
+
export { DyteParticipantSetup };
|
|
2323
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantSetup, decorators: [{
|
|
2324
|
+
type: Component,
|
|
2325
|
+
args: [{
|
|
2326
|
+
selector: 'dyte-participant-setup',
|
|
2327
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2328
|
+
template: '<ng-content></ng-content>',
|
|
2329
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2330
|
+
inputs: ['config', 'iconPack', 'isPreview', 'nameTagPosition', 'participant', 'size', 'states', 't', 'variant'],
|
|
2331
|
+
}]
|
|
2332
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2333
|
+
let DyteParticipantTile = class DyteParticipantTile {
|
|
2334
|
+
constructor(c, r, z) {
|
|
2335
|
+
this.z = z;
|
|
2336
|
+
c.detach();
|
|
2337
|
+
this.el = r.nativeElement;
|
|
2338
|
+
proxyOutputs(this, this.el, ['tileLoad', 'tileUnload']);
|
|
2339
|
+
}
|
|
2340
|
+
};
|
|
2341
|
+
DyteParticipantTile.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantTile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2342
|
+
DyteParticipantTile.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantTile, selector: "dyte-participant-tile", inputs: { config: "config", iconPack: "iconPack", isPreview: "isPreview", meeting: "meeting", nameTagPosition: "nameTagPosition", participant: "participant", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2343
|
+
DyteParticipantTile = __decorate([
|
|
2344
|
+
ProxyCmp({
|
|
2345
|
+
inputs: ['config', 'iconPack', 'isPreview', 'meeting', 'nameTagPosition', 'participant', 'size', 'states', 't', 'variant']
|
|
2346
|
+
})
|
|
2347
|
+
], DyteParticipantTile);
|
|
2348
|
+
export { DyteParticipantTile };
|
|
2349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantTile, decorators: [{
|
|
2350
|
+
type: Component,
|
|
2351
|
+
args: [{
|
|
2352
|
+
selector: 'dyte-participant-tile',
|
|
2353
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2354
|
+
template: '<ng-content></ng-content>',
|
|
2355
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2356
|
+
inputs: ['config', 'iconPack', 'isPreview', 'meeting', 'nameTagPosition', 'participant', 'size', 'states', 't', 'variant'],
|
|
2357
|
+
}]
|
|
2358
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2359
|
+
let DyteParticipants = class DyteParticipants {
|
|
2360
|
+
constructor(c, r, z) {
|
|
2361
|
+
this.z = z;
|
|
2362
|
+
c.detach();
|
|
2363
|
+
this.el = r.nativeElement;
|
|
2364
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2365
|
+
}
|
|
2366
|
+
};
|
|
2367
|
+
DyteParticipants.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipants, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2368
|
+
DyteParticipants.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipants, selector: "dyte-participants", inputs: { config: "config", defaultParticipantsTabId: "defaultParticipantsTabId", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2369
|
+
DyteParticipants = __decorate([
|
|
2370
|
+
ProxyCmp({
|
|
2371
|
+
inputs: ['config', 'defaultParticipantsTabId', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
2372
|
+
})
|
|
2373
|
+
], DyteParticipants);
|
|
2374
|
+
export { DyteParticipants };
|
|
2375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipants, decorators: [{
|
|
2376
|
+
type: Component,
|
|
2377
|
+
args: [{
|
|
2378
|
+
selector: 'dyte-participants',
|
|
2379
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2380
|
+
template: '<ng-content></ng-content>',
|
|
2381
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2382
|
+
inputs: ['config', 'defaultParticipantsTabId', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
2383
|
+
}]
|
|
2384
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2385
|
+
let DyteParticipantsAudio = class DyteParticipantsAudio {
|
|
2386
|
+
constructor(c, r, z) {
|
|
2387
|
+
this.z = z;
|
|
2388
|
+
c.detach();
|
|
2389
|
+
this.el = r.nativeElement;
|
|
2390
|
+
proxyOutputs(this, this.el, ['dialogClose']);
|
|
2391
|
+
}
|
|
2392
|
+
};
|
|
2393
|
+
DyteParticipantsAudio.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsAudio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2394
|
+
DyteParticipantsAudio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsAudio, selector: "dyte-participants-audio", inputs: { iconPack: "iconPack", meeting: "meeting", preloadedAudioElem: "preloadedAudioElem", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2395
|
+
DyteParticipantsAudio = __decorate([
|
|
2396
|
+
ProxyCmp({
|
|
2397
|
+
inputs: ['iconPack', 'meeting', 'preloadedAudioElem', 't']
|
|
2398
|
+
})
|
|
2399
|
+
], DyteParticipantsAudio);
|
|
2400
|
+
export { DyteParticipantsAudio };
|
|
2401
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsAudio, decorators: [{
|
|
2402
|
+
type: Component,
|
|
2403
|
+
args: [{
|
|
2404
|
+
selector: 'dyte-participants-audio',
|
|
2405
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2406
|
+
template: '<ng-content></ng-content>',
|
|
2407
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2408
|
+
inputs: ['iconPack', 'meeting', 'preloadedAudioElem', 't'],
|
|
2409
|
+
}]
|
|
2410
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2411
|
+
let DyteParticipantsStageList = class DyteParticipantsStageList {
|
|
2412
|
+
constructor(c, r, z) {
|
|
2413
|
+
this.z = z;
|
|
2414
|
+
c.detach();
|
|
2415
|
+
this.el = r.nativeElement;
|
|
2416
|
+
}
|
|
2417
|
+
};
|
|
2418
|
+
DyteParticipantsStageList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsStageList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2419
|
+
DyteParticipantsStageList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsStageList, selector: "dyte-participants-stage-list", inputs: { config: "config", hideHeader: "hideHeader", iconPack: "iconPack", meeting: "meeting", search: "search", size: "size", states: "states", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2420
|
+
DyteParticipantsStageList = __decorate([
|
|
2421
|
+
ProxyCmp({
|
|
2422
|
+
inputs: ['config', 'hideHeader', 'iconPack', 'meeting', 'search', 'size', 'states', 't', 'view']
|
|
2423
|
+
})
|
|
2424
|
+
], DyteParticipantsStageList);
|
|
2425
|
+
export { DyteParticipantsStageList };
|
|
2426
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsStageList, decorators: [{
|
|
2427
|
+
type: Component,
|
|
2428
|
+
args: [{
|
|
2429
|
+
selector: 'dyte-participants-stage-list',
|
|
2430
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2431
|
+
template: '<ng-content></ng-content>',
|
|
2432
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2433
|
+
inputs: ['config', 'hideHeader', 'iconPack', 'meeting', 'search', 'size', 'states', 't', 'view'],
|
|
2434
|
+
}]
|
|
2435
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2436
|
+
let DyteParticipantsStageQueue = class DyteParticipantsStageQueue {
|
|
2437
|
+
constructor(c, r, z) {
|
|
2438
|
+
this.z = z;
|
|
2439
|
+
c.detach();
|
|
2440
|
+
this.el = r.nativeElement;
|
|
2441
|
+
}
|
|
2442
|
+
};
|
|
2443
|
+
DyteParticipantsStageQueue.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsStageQueue, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2444
|
+
DyteParticipantsStageQueue.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsStageQueue, selector: "dyte-participants-stage-queue", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2445
|
+
DyteParticipantsStageQueue = __decorate([
|
|
2446
|
+
ProxyCmp({
|
|
2447
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't', 'view']
|
|
2448
|
+
})
|
|
2449
|
+
], DyteParticipantsStageQueue);
|
|
2450
|
+
export { DyteParticipantsStageQueue };
|
|
2451
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsStageQueue, decorators: [{
|
|
2452
|
+
type: Component,
|
|
2453
|
+
args: [{
|
|
2454
|
+
selector: 'dyte-participants-stage-queue',
|
|
2455
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2456
|
+
template: '<ng-content></ng-content>',
|
|
2457
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2458
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't', 'view'],
|
|
2459
|
+
}]
|
|
2460
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2461
|
+
let DyteParticipantsToggle = class DyteParticipantsToggle {
|
|
2462
|
+
constructor(c, r, z) {
|
|
2463
|
+
this.z = z;
|
|
2464
|
+
c.detach();
|
|
2465
|
+
this.el = r.nativeElement;
|
|
2466
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2467
|
+
}
|
|
2468
|
+
};
|
|
2469
|
+
DyteParticipantsToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2470
|
+
DyteParticipantsToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsToggle, selector: "dyte-participants-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2471
|
+
DyteParticipantsToggle = __decorate([
|
|
2472
|
+
ProxyCmp({
|
|
2473
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
2474
|
+
})
|
|
2475
|
+
], DyteParticipantsToggle);
|
|
2476
|
+
export { DyteParticipantsToggle };
|
|
2477
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsToggle, decorators: [{
|
|
2478
|
+
type: Component,
|
|
2479
|
+
args: [{
|
|
2480
|
+
selector: 'dyte-participants-toggle',
|
|
2481
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2482
|
+
template: '<ng-content></ng-content>',
|
|
2483
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2484
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
2485
|
+
}]
|
|
2486
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2487
|
+
let DyteParticipantsViewerList = class DyteParticipantsViewerList {
|
|
2488
|
+
constructor(c, r, z) {
|
|
2489
|
+
this.z = z;
|
|
2490
|
+
c.detach();
|
|
2491
|
+
this.el = r.nativeElement;
|
|
2492
|
+
}
|
|
2493
|
+
};
|
|
2494
|
+
DyteParticipantsViewerList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsViewerList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2495
|
+
DyteParticipantsViewerList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsViewerList, selector: "dyte-participants-viewer-list", inputs: { config: "config", hideHeader: "hideHeader", iconPack: "iconPack", meeting: "meeting", search: "search", size: "size", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2496
|
+
DyteParticipantsViewerList = __decorate([
|
|
2497
|
+
ProxyCmp({
|
|
2498
|
+
inputs: ['config', 'hideHeader', 'iconPack', 'meeting', 'search', 'size', 't', 'view']
|
|
2499
|
+
})
|
|
2500
|
+
], DyteParticipantsViewerList);
|
|
2501
|
+
export { DyteParticipantsViewerList };
|
|
2502
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsViewerList, decorators: [{
|
|
2503
|
+
type: Component,
|
|
2504
|
+
args: [{
|
|
2505
|
+
selector: 'dyte-participants-viewer-list',
|
|
2506
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2507
|
+
template: '<ng-content></ng-content>',
|
|
2508
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2509
|
+
inputs: ['config', 'hideHeader', 'iconPack', 'meeting', 'search', 'size', 't', 'view'],
|
|
2510
|
+
}]
|
|
2511
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2512
|
+
let DyteParticipantsWaitingList = class DyteParticipantsWaitingList {
|
|
2513
|
+
constructor(c, r, z) {
|
|
2514
|
+
this.z = z;
|
|
2515
|
+
c.detach();
|
|
2516
|
+
this.el = r.nativeElement;
|
|
2517
|
+
}
|
|
2518
|
+
};
|
|
2519
|
+
DyteParticipantsWaitingList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsWaitingList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2520
|
+
DyteParticipantsWaitingList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteParticipantsWaitingList, selector: "dyte-participants-waiting-list", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2521
|
+
DyteParticipantsWaitingList = __decorate([
|
|
2522
|
+
ProxyCmp({
|
|
2523
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't', 'view']
|
|
2524
|
+
})
|
|
2525
|
+
], DyteParticipantsWaitingList);
|
|
2526
|
+
export { DyteParticipantsWaitingList };
|
|
2527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteParticipantsWaitingList, decorators: [{
|
|
2528
|
+
type: Component,
|
|
2529
|
+
args: [{
|
|
2530
|
+
selector: 'dyte-participants-waiting-list',
|
|
2531
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2532
|
+
template: '<ng-content></ng-content>',
|
|
2533
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2534
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't', 'view'],
|
|
2535
|
+
}]
|
|
2536
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2537
|
+
let DytePermissionsMessage = class DytePermissionsMessage {
|
|
2538
|
+
constructor(c, r, z) {
|
|
2539
|
+
this.z = z;
|
|
2540
|
+
c.detach();
|
|
2541
|
+
this.el = r.nativeElement;
|
|
2542
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2543
|
+
}
|
|
2544
|
+
};
|
|
2545
|
+
DytePermissionsMessage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePermissionsMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2546
|
+
DytePermissionsMessage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePermissionsMessage, selector: "dyte-permissions-message", inputs: { iconPack: "iconPack", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2547
|
+
DytePermissionsMessage = __decorate([
|
|
2548
|
+
ProxyCmp({
|
|
2549
|
+
inputs: ['iconPack', 'meeting', 'states', 't']
|
|
2550
|
+
})
|
|
2551
|
+
], DytePermissionsMessage);
|
|
2552
|
+
export { DytePermissionsMessage };
|
|
2553
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePermissionsMessage, decorators: [{
|
|
2554
|
+
type: Component,
|
|
2555
|
+
args: [{
|
|
2556
|
+
selector: 'dyte-permissions-message',
|
|
2557
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2558
|
+
template: '<ng-content></ng-content>',
|
|
2559
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2560
|
+
inputs: ['iconPack', 'meeting', 'states', 't'],
|
|
2561
|
+
}]
|
|
2562
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2563
|
+
let DytePipToggle = class DytePipToggle {
|
|
2564
|
+
constructor(c, r, z) {
|
|
2565
|
+
this.z = z;
|
|
2566
|
+
c.detach();
|
|
2567
|
+
this.el = r.nativeElement;
|
|
2568
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2569
|
+
}
|
|
2570
|
+
};
|
|
2571
|
+
DytePipToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePipToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2572
|
+
DytePipToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePipToggle, selector: "dyte-pip-toggle", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2573
|
+
DytePipToggle = __decorate([
|
|
2574
|
+
ProxyCmp({
|
|
2575
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
2576
|
+
})
|
|
2577
|
+
], DytePipToggle);
|
|
2578
|
+
export { DytePipToggle };
|
|
2579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePipToggle, decorators: [{
|
|
2580
|
+
type: Component,
|
|
2581
|
+
args: [{
|
|
2582
|
+
selector: 'dyte-pip-toggle',
|
|
2583
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2584
|
+
template: '<ng-content></ng-content>',
|
|
2585
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2586
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
2587
|
+
}]
|
|
2588
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2589
|
+
let DytePluginMain = class DytePluginMain {
|
|
2590
|
+
constructor(c, r, z) {
|
|
2591
|
+
this.z = z;
|
|
2592
|
+
c.detach();
|
|
2593
|
+
this.el = r.nativeElement;
|
|
2594
|
+
}
|
|
2595
|
+
};
|
|
2596
|
+
DytePluginMain.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePluginMain, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2597
|
+
DytePluginMain.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePluginMain, selector: "dyte-plugin-main", inputs: { iconPack: "iconPack", meeting: "meeting", plugin: "plugin", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2598
|
+
DytePluginMain = __decorate([
|
|
2599
|
+
ProxyCmp({
|
|
2600
|
+
inputs: ['iconPack', 'meeting', 'plugin', 't']
|
|
2601
|
+
})
|
|
2602
|
+
], DytePluginMain);
|
|
2603
|
+
export { DytePluginMain };
|
|
2604
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePluginMain, decorators: [{
|
|
2605
|
+
type: Component,
|
|
2606
|
+
args: [{
|
|
2607
|
+
selector: 'dyte-plugin-main',
|
|
2608
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2609
|
+
template: '<ng-content></ng-content>',
|
|
2610
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2611
|
+
inputs: ['iconPack', 'meeting', 'plugin', 't'],
|
|
2612
|
+
}]
|
|
2613
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2614
|
+
let DytePlugins = class DytePlugins {
|
|
2615
|
+
constructor(c, r, z) {
|
|
2616
|
+
this.z = z;
|
|
2617
|
+
c.detach();
|
|
2618
|
+
this.el = r.nativeElement;
|
|
2619
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2620
|
+
}
|
|
2621
|
+
};
|
|
2622
|
+
DytePlugins.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePlugins, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2623
|
+
DytePlugins.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePlugins, selector: "dyte-plugins", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2624
|
+
DytePlugins = __decorate([
|
|
2625
|
+
ProxyCmp({
|
|
2626
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't']
|
|
2627
|
+
})
|
|
2628
|
+
], DytePlugins);
|
|
2629
|
+
export { DytePlugins };
|
|
2630
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePlugins, decorators: [{
|
|
2631
|
+
type: Component,
|
|
2632
|
+
args: [{
|
|
2633
|
+
selector: 'dyte-plugins',
|
|
2634
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2635
|
+
template: '<ng-content></ng-content>',
|
|
2636
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2637
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't'],
|
|
2638
|
+
}]
|
|
2639
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2640
|
+
let DytePluginsToggle = class DytePluginsToggle {
|
|
2641
|
+
constructor(c, r, z) {
|
|
2642
|
+
this.z = z;
|
|
2643
|
+
c.detach();
|
|
2644
|
+
this.el = r.nativeElement;
|
|
2645
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2646
|
+
}
|
|
2647
|
+
};
|
|
2648
|
+
DytePluginsToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePluginsToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2649
|
+
DytePluginsToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePluginsToggle, selector: "dyte-plugins-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2650
|
+
DytePluginsToggle = __decorate([
|
|
2651
|
+
ProxyCmp({
|
|
2652
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
2653
|
+
})
|
|
2654
|
+
], DytePluginsToggle);
|
|
2655
|
+
export { DytePluginsToggle };
|
|
2656
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePluginsToggle, decorators: [{
|
|
2657
|
+
type: Component,
|
|
2658
|
+
args: [{
|
|
2659
|
+
selector: 'dyte-plugins-toggle',
|
|
2660
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2661
|
+
template: '<ng-content></ng-content>',
|
|
2662
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2663
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
2664
|
+
}]
|
|
2665
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2666
|
+
let DytePoll = class DytePoll {
|
|
2667
|
+
constructor(c, r, z) {
|
|
2668
|
+
this.z = z;
|
|
2669
|
+
c.detach();
|
|
2670
|
+
this.el = r.nativeElement;
|
|
2671
|
+
proxyOutputs(this, this.el, ['dyteVotePoll']);
|
|
2672
|
+
}
|
|
2673
|
+
};
|
|
2674
|
+
DytePoll.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePoll, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2675
|
+
DytePoll.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePoll, selector: "dyte-poll", inputs: { iconPack: "iconPack", permissions: "permissions", poll: "poll", self: "self", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2676
|
+
DytePoll = __decorate([
|
|
2677
|
+
ProxyCmp({
|
|
2678
|
+
inputs: ['iconPack', 'permissions', 'poll', 'self', 't']
|
|
2679
|
+
})
|
|
2680
|
+
], DytePoll);
|
|
2681
|
+
export { DytePoll };
|
|
2682
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePoll, decorators: [{
|
|
2683
|
+
type: Component,
|
|
2684
|
+
args: [{
|
|
2685
|
+
selector: 'dyte-poll',
|
|
2686
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2687
|
+
template: '<ng-content></ng-content>',
|
|
2688
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2689
|
+
inputs: ['iconPack', 'permissions', 'poll', 'self', 't'],
|
|
2690
|
+
}]
|
|
2691
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2692
|
+
let DytePollForm = class DytePollForm {
|
|
2693
|
+
constructor(c, r, z) {
|
|
2694
|
+
this.z = z;
|
|
2695
|
+
c.detach();
|
|
2696
|
+
this.el = r.nativeElement;
|
|
2697
|
+
proxyOutputs(this, this.el, ['dyteCreatePoll']);
|
|
2698
|
+
}
|
|
2699
|
+
};
|
|
2700
|
+
DytePollForm.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePollForm, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2701
|
+
DytePollForm.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePollForm, selector: "dyte-poll-form", inputs: { iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2702
|
+
DytePollForm = __decorate([
|
|
2703
|
+
ProxyCmp({
|
|
2704
|
+
inputs: ['iconPack', 't']
|
|
2705
|
+
})
|
|
2706
|
+
], DytePollForm);
|
|
2707
|
+
export { DytePollForm };
|
|
2708
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePollForm, decorators: [{
|
|
2709
|
+
type: Component,
|
|
2710
|
+
args: [{
|
|
2711
|
+
selector: 'dyte-poll-form',
|
|
2712
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2713
|
+
template: '<ng-content></ng-content>',
|
|
2714
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2715
|
+
inputs: ['iconPack', 't'],
|
|
2716
|
+
}]
|
|
2717
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2718
|
+
let DytePolls = class DytePolls {
|
|
2719
|
+
constructor(c, r, z) {
|
|
2720
|
+
this.z = z;
|
|
2721
|
+
c.detach();
|
|
2722
|
+
this.el = r.nativeElement;
|
|
2723
|
+
}
|
|
2724
|
+
};
|
|
2725
|
+
DytePolls.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePolls, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2726
|
+
DytePolls.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePolls, selector: "dyte-polls", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2727
|
+
DytePolls = __decorate([
|
|
2728
|
+
ProxyCmp({
|
|
2729
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't']
|
|
2730
|
+
})
|
|
2731
|
+
], DytePolls);
|
|
2732
|
+
export { DytePolls };
|
|
2733
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePolls, decorators: [{
|
|
2734
|
+
type: Component,
|
|
2735
|
+
args: [{
|
|
2736
|
+
selector: 'dyte-polls',
|
|
2737
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2738
|
+
template: '<ng-content></ng-content>',
|
|
2739
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2740
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 't'],
|
|
2741
|
+
}]
|
|
2742
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2743
|
+
let DytePollsToggle = class DytePollsToggle {
|
|
2744
|
+
constructor(c, r, z) {
|
|
2745
|
+
this.z = z;
|
|
2746
|
+
c.detach();
|
|
2747
|
+
this.el = r.nativeElement;
|
|
2748
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2749
|
+
}
|
|
2750
|
+
};
|
|
2751
|
+
DytePollsToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePollsToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2752
|
+
DytePollsToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DytePollsToggle, selector: "dyte-polls-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2753
|
+
DytePollsToggle = __decorate([
|
|
2754
|
+
ProxyCmp({
|
|
2755
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
2756
|
+
})
|
|
2757
|
+
], DytePollsToggle);
|
|
2758
|
+
export { DytePollsToggle };
|
|
2759
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DytePollsToggle, decorators: [{
|
|
2760
|
+
type: Component,
|
|
2761
|
+
args: [{
|
|
2762
|
+
selector: 'dyte-polls-toggle',
|
|
2763
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2764
|
+
template: '<ng-content></ng-content>',
|
|
2765
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2766
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
2767
|
+
}]
|
|
2768
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2769
|
+
let DyteRecordingIndicator = class DyteRecordingIndicator {
|
|
2770
|
+
constructor(c, r, z) {
|
|
2771
|
+
this.z = z;
|
|
2772
|
+
c.detach();
|
|
2773
|
+
this.el = r.nativeElement;
|
|
2774
|
+
}
|
|
2775
|
+
};
|
|
2776
|
+
DyteRecordingIndicator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteRecordingIndicator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2777
|
+
DyteRecordingIndicator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteRecordingIndicator, selector: "dyte-recording-indicator", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2778
|
+
DyteRecordingIndicator = __decorate([
|
|
2779
|
+
ProxyCmp({
|
|
2780
|
+
inputs: ['iconPack', 'meeting', 'size', 't']
|
|
2781
|
+
})
|
|
2782
|
+
], DyteRecordingIndicator);
|
|
2783
|
+
export { DyteRecordingIndicator };
|
|
2784
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteRecordingIndicator, decorators: [{
|
|
2785
|
+
type: Component,
|
|
2786
|
+
args: [{
|
|
2787
|
+
selector: 'dyte-recording-indicator',
|
|
2788
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2789
|
+
template: '<ng-content></ng-content>',
|
|
2790
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2791
|
+
inputs: ['iconPack', 'meeting', 'size', 't'],
|
|
2792
|
+
}]
|
|
2793
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2794
|
+
let DyteRecordingToggle = class DyteRecordingToggle {
|
|
2795
|
+
constructor(c, r, z) {
|
|
2796
|
+
this.z = z;
|
|
2797
|
+
c.detach();
|
|
2798
|
+
this.el = r.nativeElement;
|
|
2799
|
+
proxyOutputs(this, this.el, ['dyteAPIError']);
|
|
2800
|
+
}
|
|
2801
|
+
};
|
|
2802
|
+
DyteRecordingToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteRecordingToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2803
|
+
DyteRecordingToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteRecordingToggle, selector: "dyte-recording-toggle", inputs: { disabled: "disabled", iconPack: "iconPack", meeting: "meeting", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2804
|
+
DyteRecordingToggle = __decorate([
|
|
2805
|
+
ProxyCmp({
|
|
2806
|
+
inputs: ['disabled', 'iconPack', 'meeting', 'size', 't', 'variant']
|
|
2807
|
+
})
|
|
2808
|
+
], DyteRecordingToggle);
|
|
2809
|
+
export { DyteRecordingToggle };
|
|
2810
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteRecordingToggle, decorators: [{
|
|
2811
|
+
type: Component,
|
|
2812
|
+
args: [{
|
|
2813
|
+
selector: 'dyte-recording-toggle',
|
|
2814
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2815
|
+
template: '<ng-content></ng-content>',
|
|
2816
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2817
|
+
inputs: ['disabled', 'iconPack', 'meeting', 'size', 't', 'variant'],
|
|
2818
|
+
}]
|
|
2819
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2820
|
+
let DyteScreenShareToggle = class DyteScreenShareToggle {
|
|
2821
|
+
constructor(c, r, z) {
|
|
2822
|
+
this.z = z;
|
|
2823
|
+
c.detach();
|
|
2824
|
+
this.el = r.nativeElement;
|
|
2825
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate', 'dyteAPIError']);
|
|
2826
|
+
}
|
|
2827
|
+
};
|
|
2828
|
+
DyteScreenShareToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteScreenShareToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2829
|
+
DyteScreenShareToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteScreenShareToggle, selector: "dyte-screen-share-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2830
|
+
DyteScreenShareToggle = __decorate([
|
|
2831
|
+
ProxyCmp({
|
|
2832
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
2833
|
+
})
|
|
2834
|
+
], DyteScreenShareToggle);
|
|
2835
|
+
export { DyteScreenShareToggle };
|
|
2836
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteScreenShareToggle, decorators: [{
|
|
2837
|
+
type: Component,
|
|
2838
|
+
args: [{
|
|
2839
|
+
selector: 'dyte-screen-share-toggle',
|
|
2840
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2841
|
+
template: '<ng-content></ng-content>',
|
|
2842
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2843
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
2844
|
+
}]
|
|
2845
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2846
|
+
let DyteScreenshareView = class DyteScreenshareView {
|
|
2847
|
+
constructor(c, r, z) {
|
|
2848
|
+
this.z = z;
|
|
2849
|
+
c.detach();
|
|
2850
|
+
this.el = r.nativeElement;
|
|
2851
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate', 'screensharePlay']);
|
|
2852
|
+
}
|
|
2853
|
+
};
|
|
2854
|
+
DyteScreenshareView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteScreenshareView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2855
|
+
DyteScreenshareView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteScreenshareView, selector: "dyte-screenshare-view", inputs: { hideFullScreenButton: "hideFullScreenButton", iconPack: "iconPack", meeting: "meeting", nameTagPosition: "nameTagPosition", participant: "participant", size: "size", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2856
|
+
DyteScreenshareView = __decorate([
|
|
2857
|
+
ProxyCmp({
|
|
2858
|
+
inputs: ['hideFullScreenButton', 'iconPack', 'meeting', 'nameTagPosition', 'participant', 'size', 't', 'variant']
|
|
2859
|
+
})
|
|
2860
|
+
], DyteScreenshareView);
|
|
2861
|
+
export { DyteScreenshareView };
|
|
2862
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteScreenshareView, decorators: [{
|
|
2863
|
+
type: Component,
|
|
2864
|
+
args: [{
|
|
2865
|
+
selector: 'dyte-screenshare-view',
|
|
2866
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2867
|
+
template: '<ng-content></ng-content>',
|
|
2868
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2869
|
+
inputs: ['hideFullScreenButton', 'iconPack', 'meeting', 'nameTagPosition', 'participant', 'size', 't', 'variant'],
|
|
2870
|
+
}]
|
|
2871
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2872
|
+
let DyteSettings = class DyteSettings {
|
|
2873
|
+
constructor(c, r, z) {
|
|
2874
|
+
this.z = z;
|
|
2875
|
+
c.detach();
|
|
2876
|
+
this.el = r.nativeElement;
|
|
2877
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2878
|
+
}
|
|
2879
|
+
};
|
|
2880
|
+
DyteSettings.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettings, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2881
|
+
DyteSettings.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSettings, selector: "dyte-settings", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2882
|
+
DyteSettings = __decorate([
|
|
2883
|
+
ProxyCmp({
|
|
2884
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
2885
|
+
})
|
|
2886
|
+
], DyteSettings);
|
|
2887
|
+
export { DyteSettings };
|
|
2888
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettings, decorators: [{
|
|
2889
|
+
type: Component,
|
|
2890
|
+
args: [{
|
|
2891
|
+
selector: 'dyte-settings',
|
|
2892
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2893
|
+
template: '<ng-content></ng-content>',
|
|
2894
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2895
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
2896
|
+
}]
|
|
2897
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2898
|
+
let DyteSettingsAudio = class DyteSettingsAudio {
|
|
2899
|
+
constructor(c, r, z) {
|
|
2900
|
+
this.z = z;
|
|
2901
|
+
c.detach();
|
|
2902
|
+
this.el = r.nativeElement;
|
|
2903
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2904
|
+
}
|
|
2905
|
+
};
|
|
2906
|
+
DyteSettingsAudio.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsAudio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2907
|
+
DyteSettingsAudio.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSettingsAudio, selector: "dyte-settings-audio", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2908
|
+
DyteSettingsAudio = __decorate([
|
|
2909
|
+
ProxyCmp({
|
|
2910
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
2911
|
+
})
|
|
2912
|
+
], DyteSettingsAudio);
|
|
2913
|
+
export { DyteSettingsAudio };
|
|
2914
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsAudio, decorators: [{
|
|
2915
|
+
type: Component,
|
|
2916
|
+
args: [{
|
|
2917
|
+
selector: 'dyte-settings-audio',
|
|
2918
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2919
|
+
template: '<ng-content></ng-content>',
|
|
2920
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2921
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
2922
|
+
}]
|
|
2923
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2924
|
+
let DyteSettingsToggle = class DyteSettingsToggle {
|
|
2925
|
+
constructor(c, r, z) {
|
|
2926
|
+
this.z = z;
|
|
2927
|
+
c.detach();
|
|
2928
|
+
this.el = r.nativeElement;
|
|
2929
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2930
|
+
}
|
|
2931
|
+
};
|
|
2932
|
+
DyteSettingsToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2933
|
+
DyteSettingsToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSettingsToggle, selector: "dyte-settings-toggle", inputs: { iconPack: "iconPack", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2934
|
+
DyteSettingsToggle = __decorate([
|
|
2935
|
+
ProxyCmp({
|
|
2936
|
+
inputs: ['iconPack', 'size', 'states', 't', 'variant']
|
|
2937
|
+
})
|
|
2938
|
+
], DyteSettingsToggle);
|
|
2939
|
+
export { DyteSettingsToggle };
|
|
2940
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsToggle, decorators: [{
|
|
2941
|
+
type: Component,
|
|
2942
|
+
args: [{
|
|
2943
|
+
selector: 'dyte-settings-toggle',
|
|
2944
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2945
|
+
template: '<ng-content></ng-content>',
|
|
2946
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2947
|
+
inputs: ['iconPack', 'size', 'states', 't', 'variant'],
|
|
2948
|
+
}]
|
|
2949
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2950
|
+
let DyteSettingsVideo = class DyteSettingsVideo {
|
|
2951
|
+
constructor(c, r, z) {
|
|
2952
|
+
this.z = z;
|
|
2953
|
+
c.detach();
|
|
2954
|
+
this.el = r.nativeElement;
|
|
2955
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2956
|
+
}
|
|
2957
|
+
};
|
|
2958
|
+
DyteSettingsVideo.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsVideo, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2959
|
+
DyteSettingsVideo.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSettingsVideo, selector: "dyte-settings-video", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2960
|
+
DyteSettingsVideo = __decorate([
|
|
2961
|
+
ProxyCmp({
|
|
2962
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't']
|
|
2963
|
+
})
|
|
2964
|
+
], DyteSettingsVideo);
|
|
2965
|
+
export { DyteSettingsVideo };
|
|
2966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSettingsVideo, decorators: [{
|
|
2967
|
+
type: Component,
|
|
2968
|
+
args: [{
|
|
2969
|
+
selector: 'dyte-settings-video',
|
|
2970
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2971
|
+
template: '<ng-content></ng-content>',
|
|
2972
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2973
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't'],
|
|
2974
|
+
}]
|
|
2975
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
2976
|
+
let DyteSetupScreen = class DyteSetupScreen {
|
|
2977
|
+
constructor(c, r, z) {
|
|
2978
|
+
this.z = z;
|
|
2979
|
+
c.detach();
|
|
2980
|
+
this.el = r.nativeElement;
|
|
2981
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
2982
|
+
}
|
|
2983
|
+
};
|
|
2984
|
+
DyteSetupScreen.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSetupScreen, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2985
|
+
DyteSetupScreen.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSetupScreen, selector: "dyte-setup-screen", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2986
|
+
DyteSetupScreen = __decorate([
|
|
2987
|
+
ProxyCmp({
|
|
2988
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't']
|
|
2989
|
+
})
|
|
2990
|
+
], DyteSetupScreen);
|
|
2991
|
+
export { DyteSetupScreen };
|
|
2992
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSetupScreen, decorators: [{
|
|
2993
|
+
type: Component,
|
|
2994
|
+
args: [{
|
|
2995
|
+
selector: 'dyte-setup-screen',
|
|
2996
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2997
|
+
template: '<ng-content></ng-content>',
|
|
2998
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2999
|
+
inputs: ['config', 'iconPack', 'meeting', 'size', 'states', 't'],
|
|
3000
|
+
}]
|
|
3001
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3002
|
+
let DyteSidebar = class DyteSidebar {
|
|
3003
|
+
constructor(c, r, z) {
|
|
3004
|
+
this.z = z;
|
|
3005
|
+
c.detach();
|
|
3006
|
+
this.el = r.nativeElement;
|
|
3007
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
3008
|
+
}
|
|
3009
|
+
};
|
|
3010
|
+
DyteSidebar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSidebar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3011
|
+
DyteSidebar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSidebar, selector: "dyte-sidebar", inputs: { config: "config", defaultSection: "defaultSection", enabledSections: "enabledSections", iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3012
|
+
DyteSidebar = __decorate([
|
|
3013
|
+
ProxyCmp({
|
|
3014
|
+
inputs: ['config', 'defaultSection', 'enabledSections', 'iconPack', 'meeting', 'size', 'states', 't', 'view']
|
|
3015
|
+
})
|
|
3016
|
+
], DyteSidebar);
|
|
3017
|
+
export { DyteSidebar };
|
|
3018
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSidebar, decorators: [{
|
|
3019
|
+
type: Component,
|
|
3020
|
+
args: [{
|
|
3021
|
+
selector: 'dyte-sidebar',
|
|
3022
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3023
|
+
template: '<ng-content></ng-content>',
|
|
3024
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3025
|
+
inputs: ['config', 'defaultSection', 'enabledSections', 'iconPack', 'meeting', 'size', 'states', 't', 'view'],
|
|
3026
|
+
}]
|
|
3027
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3028
|
+
let DyteSidebarUi = class DyteSidebarUi {
|
|
3029
|
+
constructor(c, r, z) {
|
|
3030
|
+
this.z = z;
|
|
3031
|
+
c.detach();
|
|
3032
|
+
this.el = r.nativeElement;
|
|
3033
|
+
proxyOutputs(this, this.el, ['tabChange', 'sidebarClose']);
|
|
3034
|
+
}
|
|
3035
|
+
};
|
|
3036
|
+
DyteSidebarUi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSidebarUi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3037
|
+
DyteSidebarUi.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSidebarUi, selector: "dyte-sidebar-ui", inputs: { currentTab: "currentTab", hideCloseAction: "hideCloseAction", hideHeader: "hideHeader", iconPack: "iconPack", t: "t", tabs: "tabs", view: "view" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3038
|
+
DyteSidebarUi = __decorate([
|
|
3039
|
+
ProxyCmp({
|
|
3040
|
+
inputs: ['currentTab', 'hideCloseAction', 'hideHeader', 'iconPack', 't', 'tabs', 'view']
|
|
3041
|
+
})
|
|
3042
|
+
], DyteSidebarUi);
|
|
3043
|
+
export { DyteSidebarUi };
|
|
3044
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSidebarUi, decorators: [{
|
|
3045
|
+
type: Component,
|
|
3046
|
+
args: [{
|
|
3047
|
+
selector: 'dyte-sidebar-ui',
|
|
3048
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3049
|
+
template: '<ng-content></ng-content>',
|
|
3050
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3051
|
+
inputs: ['currentTab', 'hideCloseAction', 'hideHeader', 'iconPack', 't', 'tabs', 'view'],
|
|
3052
|
+
}]
|
|
3053
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3054
|
+
let DyteSimpleGrid = class DyteSimpleGrid {
|
|
3055
|
+
constructor(c, r, z) {
|
|
3056
|
+
this.z = z;
|
|
3057
|
+
c.detach();
|
|
3058
|
+
this.el = r.nativeElement;
|
|
3059
|
+
}
|
|
3060
|
+
};
|
|
3061
|
+
DyteSimpleGrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSimpleGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3062
|
+
DyteSimpleGrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSimpleGrid, selector: "dyte-simple-grid", inputs: { aspectRatio: "aspectRatio", config: "config", gap: "gap", iconPack: "iconPack", meeting: "meeting", participants: "participants", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3063
|
+
DyteSimpleGrid = __decorate([
|
|
3064
|
+
ProxyCmp({
|
|
3065
|
+
inputs: ['aspectRatio', 'config', 'gap', 'iconPack', 'meeting', 'participants', 'size', 'states', 't']
|
|
3066
|
+
})
|
|
3067
|
+
], DyteSimpleGrid);
|
|
3068
|
+
export { DyteSimpleGrid };
|
|
3069
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSimpleGrid, decorators: [{
|
|
3070
|
+
type: Component,
|
|
3071
|
+
args: [{
|
|
3072
|
+
selector: 'dyte-simple-grid',
|
|
3073
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3074
|
+
template: '<ng-content></ng-content>',
|
|
3075
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3076
|
+
inputs: ['aspectRatio', 'config', 'gap', 'iconPack', 'meeting', 'participants', 'size', 'states', 't'],
|
|
3077
|
+
}]
|
|
3078
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3079
|
+
let DyteSpeakerSelector = class DyteSpeakerSelector {
|
|
3080
|
+
constructor(c, r, z) {
|
|
3081
|
+
this.z = z;
|
|
3082
|
+
c.detach();
|
|
3083
|
+
this.el = r.nativeElement;
|
|
3084
|
+
}
|
|
3085
|
+
};
|
|
3086
|
+
DyteSpeakerSelector.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpeakerSelector, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3087
|
+
DyteSpeakerSelector.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSpeakerSelector, selector: "dyte-speaker-selector", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3088
|
+
DyteSpeakerSelector = __decorate([
|
|
3089
|
+
ProxyCmp({
|
|
3090
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
3091
|
+
})
|
|
3092
|
+
], DyteSpeakerSelector);
|
|
3093
|
+
export { DyteSpeakerSelector };
|
|
3094
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpeakerSelector, decorators: [{
|
|
3095
|
+
type: Component,
|
|
3096
|
+
args: [{
|
|
3097
|
+
selector: 'dyte-speaker-selector',
|
|
3098
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3099
|
+
template: '<ng-content></ng-content>',
|
|
3100
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3101
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
3102
|
+
}]
|
|
3103
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3104
|
+
let DyteSpinner = class DyteSpinner {
|
|
3105
|
+
constructor(c, r, z) {
|
|
3106
|
+
this.z = z;
|
|
3107
|
+
c.detach();
|
|
3108
|
+
this.el = r.nativeElement;
|
|
3109
|
+
}
|
|
3110
|
+
};
|
|
3111
|
+
DyteSpinner.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpinner, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3112
|
+
DyteSpinner.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSpinner, selector: "dyte-spinner", inputs: { iconPack: "iconPack", size: "size" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3113
|
+
DyteSpinner = __decorate([
|
|
3114
|
+
ProxyCmp({
|
|
3115
|
+
inputs: ['iconPack', 'size']
|
|
3116
|
+
})
|
|
3117
|
+
], DyteSpinner);
|
|
3118
|
+
export { DyteSpinner };
|
|
3119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpinner, decorators: [{
|
|
3120
|
+
type: Component,
|
|
3121
|
+
args: [{
|
|
3122
|
+
selector: 'dyte-spinner',
|
|
3123
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3124
|
+
template: '<ng-content></ng-content>',
|
|
3125
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3126
|
+
inputs: ['iconPack', 'size'],
|
|
3127
|
+
}]
|
|
3128
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3129
|
+
let DyteSpotlightGrid = class DyteSpotlightGrid {
|
|
3130
|
+
constructor(c, r, z) {
|
|
3131
|
+
this.z = z;
|
|
3132
|
+
c.detach();
|
|
3133
|
+
this.el = r.nativeElement;
|
|
3134
|
+
}
|
|
3135
|
+
};
|
|
3136
|
+
DyteSpotlightGrid.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpotlightGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3137
|
+
DyteSpotlightGrid.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSpotlightGrid, selector: "dyte-spotlight-grid", inputs: { aspectRatio: "aspectRatio", config: "config", gap: "gap", gridSize: "gridSize", iconPack: "iconPack", layout: "layout", meeting: "meeting", participants: "participants", pinnedParticipants: "pinnedParticipants", size: "size", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3138
|
+
DyteSpotlightGrid = __decorate([
|
|
3139
|
+
ProxyCmp({
|
|
3140
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'participants', 'pinnedParticipants', 'size', 'states', 't']
|
|
3141
|
+
})
|
|
3142
|
+
], DyteSpotlightGrid);
|
|
3143
|
+
export { DyteSpotlightGrid };
|
|
3144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpotlightGrid, decorators: [{
|
|
3145
|
+
type: Component,
|
|
3146
|
+
args: [{
|
|
3147
|
+
selector: 'dyte-spotlight-grid',
|
|
3148
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3149
|
+
template: '<ng-content></ng-content>',
|
|
3150
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3151
|
+
inputs: ['aspectRatio', 'config', 'gap', 'gridSize', 'iconPack', 'layout', 'meeting', 'participants', 'pinnedParticipants', 'size', 'states', 't'],
|
|
3152
|
+
}]
|
|
3153
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3154
|
+
let DyteSpotlightIndicator = class DyteSpotlightIndicator {
|
|
3155
|
+
constructor(c, r, z) {
|
|
3156
|
+
this.z = z;
|
|
3157
|
+
c.detach();
|
|
3158
|
+
this.el = r.nativeElement;
|
|
3159
|
+
}
|
|
3160
|
+
};
|
|
3161
|
+
DyteSpotlightIndicator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpotlightIndicator, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3162
|
+
DyteSpotlightIndicator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSpotlightIndicator, selector: "dyte-spotlight-indicator", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3163
|
+
DyteSpotlightIndicator = __decorate([
|
|
3164
|
+
ProxyCmp({
|
|
3165
|
+
inputs: ['iconPack', 'meeting', 'size', 't']
|
|
3166
|
+
})
|
|
3167
|
+
], DyteSpotlightIndicator);
|
|
3168
|
+
export { DyteSpotlightIndicator };
|
|
3169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSpotlightIndicator, decorators: [{
|
|
3170
|
+
type: Component,
|
|
3171
|
+
args: [{
|
|
3172
|
+
selector: 'dyte-spotlight-indicator',
|
|
3173
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3174
|
+
template: '<ng-content></ng-content>',
|
|
3175
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3176
|
+
inputs: ['iconPack', 'meeting', 'size', 't'],
|
|
3177
|
+
}]
|
|
3178
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3179
|
+
let DyteStage = class DyteStage {
|
|
3180
|
+
constructor(c, r, z) {
|
|
3181
|
+
this.z = z;
|
|
3182
|
+
c.detach();
|
|
3183
|
+
this.el = r.nativeElement;
|
|
3184
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
3185
|
+
}
|
|
3186
|
+
};
|
|
3187
|
+
DyteStage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteStage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3188
|
+
DyteStage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteStage, selector: "dyte-stage", inputs: { iconPack: "iconPack", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3189
|
+
DyteStage = __decorate([
|
|
3190
|
+
ProxyCmp({
|
|
3191
|
+
inputs: ['iconPack', 't']
|
|
3192
|
+
})
|
|
3193
|
+
], DyteStage);
|
|
3194
|
+
export { DyteStage };
|
|
3195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteStage, decorators: [{
|
|
3196
|
+
type: Component,
|
|
3197
|
+
args: [{
|
|
3198
|
+
selector: 'dyte-stage',
|
|
3199
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3200
|
+
template: '<ng-content></ng-content>',
|
|
3201
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3202
|
+
inputs: ['iconPack', 't'],
|
|
3203
|
+
}]
|
|
3204
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3205
|
+
let DyteStageToggle = class DyteStageToggle {
|
|
3206
|
+
constructor(c, r, z) {
|
|
3207
|
+
this.z = z;
|
|
3208
|
+
c.detach();
|
|
3209
|
+
this.el = r.nativeElement;
|
|
3210
|
+
proxyOutputs(this, this.el, ['dyteStateUpdate']);
|
|
3211
|
+
}
|
|
3212
|
+
};
|
|
3213
|
+
DyteStageToggle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteStageToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3214
|
+
DyteStageToggle.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteStageToggle, selector: "dyte-stage-toggle", inputs: { iconPack: "iconPack", meeting: "meeting", size: "size", states: "states", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3215
|
+
DyteStageToggle = __decorate([
|
|
3216
|
+
ProxyCmp({
|
|
3217
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant']
|
|
3218
|
+
})
|
|
3219
|
+
], DyteStageToggle);
|
|
3220
|
+
export { DyteStageToggle };
|
|
3221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteStageToggle, decorators: [{
|
|
3222
|
+
type: Component,
|
|
3223
|
+
args: [{
|
|
3224
|
+
selector: 'dyte-stage-toggle',
|
|
3225
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3226
|
+
template: '<ng-content></ng-content>',
|
|
3227
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3228
|
+
inputs: ['iconPack', 'meeting', 'size', 'states', 't', 'variant'],
|
|
3229
|
+
}]
|
|
3230
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3231
|
+
let DyteSwitch = class DyteSwitch {
|
|
3232
|
+
constructor(c, r, z) {
|
|
3233
|
+
this.z = z;
|
|
3234
|
+
c.detach();
|
|
3235
|
+
this.el = r.nativeElement;
|
|
3236
|
+
proxyOutputs(this, this.el, ['dyteChange']);
|
|
3237
|
+
}
|
|
3238
|
+
};
|
|
3239
|
+
DyteSwitch.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSwitch, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3240
|
+
DyteSwitch.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteSwitch, selector: "dyte-switch", inputs: { checked: "checked", disabled: "disabled", iconPack: "iconPack", readonly: "readonly", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3241
|
+
DyteSwitch = __decorate([
|
|
3242
|
+
ProxyCmp({
|
|
3243
|
+
inputs: ['checked', 'disabled', 'iconPack', 'readonly', 't']
|
|
3244
|
+
})
|
|
3245
|
+
], DyteSwitch);
|
|
3246
|
+
export { DyteSwitch };
|
|
3247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteSwitch, decorators: [{
|
|
3248
|
+
type: Component,
|
|
3249
|
+
args: [{
|
|
3250
|
+
selector: 'dyte-switch',
|
|
3251
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3252
|
+
template: '<ng-content></ng-content>',
|
|
3253
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3254
|
+
inputs: ['checked', 'disabled', 'iconPack', 'readonly', 't'],
|
|
3255
|
+
}]
|
|
3256
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3257
|
+
let DyteTabBar = class DyteTabBar {
|
|
3258
|
+
constructor(c, r, z) {
|
|
3259
|
+
this.z = z;
|
|
3260
|
+
c.detach();
|
|
3261
|
+
this.el = r.nativeElement;
|
|
3262
|
+
proxyOutputs(this, this.el, ['tabChange']);
|
|
3263
|
+
}
|
|
3264
|
+
};
|
|
3265
|
+
DyteTabBar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTabBar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3266
|
+
DyteTabBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTabBar, selector: "dyte-tab-bar", inputs: { activeTab: "activeTab", config: "config", iconPack: "iconPack", layout: "layout", meeting: "meeting", size: "size", states: "states", t: "t", tabs: "tabs" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3267
|
+
DyteTabBar = __decorate([
|
|
3268
|
+
ProxyCmp({
|
|
3269
|
+
inputs: ['activeTab', 'config', 'iconPack', 'layout', 'meeting', 'size', 'states', 't', 'tabs']
|
|
3270
|
+
})
|
|
3271
|
+
], DyteTabBar);
|
|
3272
|
+
export { DyteTabBar };
|
|
3273
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTabBar, decorators: [{
|
|
3274
|
+
type: Component,
|
|
3275
|
+
args: [{
|
|
3276
|
+
selector: 'dyte-tab-bar',
|
|
3277
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3278
|
+
template: '<ng-content></ng-content>',
|
|
3279
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3280
|
+
inputs: ['activeTab', 'config', 'iconPack', 'layout', 'meeting', 'size', 'states', 't', 'tabs'],
|
|
3281
|
+
}]
|
|
3282
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3283
|
+
let DyteTextComposerView = class DyteTextComposerView {
|
|
3284
|
+
constructor(c, r, z) {
|
|
3285
|
+
this.z = z;
|
|
3286
|
+
c.detach();
|
|
3287
|
+
this.el = r.nativeElement;
|
|
3288
|
+
proxyOutputs(this, this.el, ['textChange']);
|
|
3289
|
+
}
|
|
3290
|
+
};
|
|
3291
|
+
DyteTextComposerView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextComposerView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3292
|
+
DyteTextComposerView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTextComposerView, selector: "dyte-text-composer-view", inputs: { disabled: "disabled", iconPack: "iconPack", keyDownHandler: "keyDownHandler", maxLength: "maxLength", placeholder: "placeholder", rateLimitBreached: "rateLimitBreached", t: "t", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3293
|
+
DyteTextComposerView = __decorate([
|
|
3294
|
+
ProxyCmp({
|
|
3295
|
+
inputs: ['disabled', 'iconPack', 'keyDownHandler', 'maxLength', 'placeholder', 'rateLimitBreached', 't', 'value'],
|
|
3296
|
+
methods: ['setText']
|
|
3297
|
+
})
|
|
3298
|
+
], DyteTextComposerView);
|
|
3299
|
+
export { DyteTextComposerView };
|
|
3300
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextComposerView, decorators: [{
|
|
3301
|
+
type: Component,
|
|
3302
|
+
args: [{
|
|
3303
|
+
selector: 'dyte-text-composer-view',
|
|
3304
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3305
|
+
template: '<ng-content></ng-content>',
|
|
3306
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3307
|
+
inputs: ['disabled', 'iconPack', 'keyDownHandler', 'maxLength', 'placeholder', 'rateLimitBreached', 't', 'value'],
|
|
3308
|
+
}]
|
|
3309
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3310
|
+
let DyteTextMessage = class DyteTextMessage {
|
|
3311
|
+
constructor(c, r, z) {
|
|
3312
|
+
this.z = z;
|
|
3313
|
+
c.detach();
|
|
3314
|
+
this.el = r.nativeElement;
|
|
3315
|
+
}
|
|
3316
|
+
};
|
|
3317
|
+
DyteTextMessage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextMessage, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3318
|
+
DyteTextMessage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTextMessage, selector: "dyte-text-message", inputs: { iconPack: "iconPack", isContinued: "isContinued", message: "message", now: "now", showBubble: "showBubble", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3319
|
+
DyteTextMessage = __decorate([
|
|
3320
|
+
ProxyCmp({
|
|
3321
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't']
|
|
3322
|
+
})
|
|
3323
|
+
], DyteTextMessage);
|
|
3324
|
+
export { DyteTextMessage };
|
|
3325
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextMessage, decorators: [{
|
|
3326
|
+
type: Component,
|
|
3327
|
+
args: [{
|
|
3328
|
+
selector: 'dyte-text-message',
|
|
3329
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3330
|
+
template: '<ng-content></ng-content>',
|
|
3331
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3332
|
+
inputs: ['iconPack', 'isContinued', 'message', 'now', 'showBubble', 't'],
|
|
3333
|
+
}]
|
|
3334
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3335
|
+
let DyteTextMessageView = class DyteTextMessageView {
|
|
3336
|
+
constructor(c, r, z) {
|
|
3337
|
+
this.z = z;
|
|
3338
|
+
c.detach();
|
|
3339
|
+
this.el = r.nativeElement;
|
|
3340
|
+
}
|
|
3341
|
+
};
|
|
3342
|
+
DyteTextMessageView.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextMessageView, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3343
|
+
DyteTextMessageView.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTextMessageView, selector: "dyte-text-message-view", inputs: { isMarkdown: "isMarkdown", text: "text" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3344
|
+
DyteTextMessageView = __decorate([
|
|
3345
|
+
ProxyCmp({
|
|
3346
|
+
inputs: ['isMarkdown', 'text']
|
|
3347
|
+
})
|
|
3348
|
+
], DyteTextMessageView);
|
|
3349
|
+
export { DyteTextMessageView };
|
|
3350
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTextMessageView, decorators: [{
|
|
3351
|
+
type: Component,
|
|
3352
|
+
args: [{
|
|
3353
|
+
selector: 'dyte-text-message-view',
|
|
3354
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3355
|
+
template: '<ng-content></ng-content>',
|
|
3356
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3357
|
+
inputs: ['isMarkdown', 'text'],
|
|
3358
|
+
}]
|
|
3359
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3360
|
+
let DyteTooltip = class DyteTooltip {
|
|
3361
|
+
constructor(c, r, z) {
|
|
3362
|
+
this.z = z;
|
|
3363
|
+
c.detach();
|
|
3364
|
+
this.el = r.nativeElement;
|
|
3365
|
+
proxyOutputs(this, this.el, ['dyteOpenChange']);
|
|
3366
|
+
}
|
|
3367
|
+
};
|
|
3368
|
+
DyteTooltip.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3369
|
+
DyteTooltip.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTooltip, selector: "dyte-tooltip", inputs: { delay: "delay", disabled: "disabled", kind: "kind", label: "label", open: "open", placement: "placement", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3370
|
+
DyteTooltip = __decorate([
|
|
3371
|
+
ProxyCmp({
|
|
3372
|
+
inputs: ['delay', 'disabled', 'kind', 'label', 'open', 'placement', 'size', 'variant']
|
|
3373
|
+
})
|
|
3374
|
+
], DyteTooltip);
|
|
3375
|
+
export { DyteTooltip };
|
|
3376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTooltip, decorators: [{
|
|
3377
|
+
type: Component,
|
|
3378
|
+
args: [{
|
|
3379
|
+
selector: 'dyte-tooltip',
|
|
3380
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3381
|
+
template: '<ng-content></ng-content>',
|
|
3382
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3383
|
+
inputs: ['delay', 'disabled', 'kind', 'label', 'open', 'placement', 'size', 'variant'],
|
|
3384
|
+
}]
|
|
3385
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3386
|
+
let DyteTranscript = class DyteTranscript {
|
|
3387
|
+
constructor(c, r, z) {
|
|
3388
|
+
this.z = z;
|
|
3389
|
+
c.detach();
|
|
3390
|
+
this.el = r.nativeElement;
|
|
3391
|
+
proxyOutputs(this, this.el, ['dyteTranscriptDismiss']);
|
|
3392
|
+
}
|
|
3393
|
+
};
|
|
3394
|
+
DyteTranscript.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTranscript, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3395
|
+
DyteTranscript.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTranscript, selector: "dyte-transcript", inputs: { t: "t", transcript: "transcript" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3396
|
+
DyteTranscript = __decorate([
|
|
3397
|
+
ProxyCmp({
|
|
3398
|
+
inputs: ['t', 'transcript']
|
|
3399
|
+
})
|
|
3400
|
+
], DyteTranscript);
|
|
3401
|
+
export { DyteTranscript };
|
|
3402
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTranscript, decorators: [{
|
|
3403
|
+
type: Component,
|
|
3404
|
+
args: [{
|
|
3405
|
+
selector: 'dyte-transcript',
|
|
3406
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3407
|
+
template: '<ng-content></ng-content>',
|
|
3408
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3409
|
+
inputs: ['t', 'transcript'],
|
|
3410
|
+
}]
|
|
3411
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3412
|
+
let DyteTranscripts = class DyteTranscripts {
|
|
3413
|
+
constructor(c, r, z) {
|
|
3414
|
+
this.z = z;
|
|
3415
|
+
c.detach();
|
|
3416
|
+
this.el = r.nativeElement;
|
|
3417
|
+
}
|
|
3418
|
+
};
|
|
3419
|
+
DyteTranscripts.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTranscripts, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3420
|
+
DyteTranscripts.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteTranscripts, selector: "dyte-transcripts", inputs: { config: "config", meeting: "meeting", states: "states", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3421
|
+
DyteTranscripts = __decorate([
|
|
3422
|
+
ProxyCmp({
|
|
3423
|
+
inputs: ['config', 'meeting', 'states', 't']
|
|
3424
|
+
})
|
|
3425
|
+
], DyteTranscripts);
|
|
3426
|
+
export { DyteTranscripts };
|
|
3427
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteTranscripts, decorators: [{
|
|
3428
|
+
type: Component,
|
|
3429
|
+
args: [{
|
|
3430
|
+
selector: 'dyte-transcripts',
|
|
3431
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3432
|
+
template: '<ng-content></ng-content>',
|
|
3433
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3434
|
+
inputs: ['config', 'meeting', 'states', 't'],
|
|
3435
|
+
}]
|
|
3436
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3437
|
+
let DyteUiProvider = class DyteUiProvider {
|
|
3438
|
+
constructor(c, r, z) {
|
|
3439
|
+
this.z = z;
|
|
3440
|
+
c.detach();
|
|
3441
|
+
this.el = r.nativeElement;
|
|
3442
|
+
proxyOutputs(this, this.el, ['dyteStatesUpdate']);
|
|
3443
|
+
}
|
|
3444
|
+
};
|
|
3445
|
+
DyteUiProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteUiProvider, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3446
|
+
DyteUiProvider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteUiProvider, selector: "dyte-ui-provider", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", noRenderUntilMeeting: "noRenderUntilMeeting", showSetupScreen: "showSetupScreen", size: "size", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3447
|
+
DyteUiProvider = __decorate([
|
|
3448
|
+
ProxyCmp({
|
|
3449
|
+
inputs: ['config', 'iconPack', 'meeting', 'noRenderUntilMeeting', 'showSetupScreen', 'size', 't']
|
|
3450
|
+
})
|
|
3451
|
+
], DyteUiProvider);
|
|
3452
|
+
export { DyteUiProvider };
|
|
3453
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteUiProvider, decorators: [{
|
|
3454
|
+
type: Component,
|
|
3455
|
+
args: [{
|
|
3456
|
+
selector: 'dyte-ui-provider',
|
|
3457
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3458
|
+
template: '<ng-content></ng-content>',
|
|
3459
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3460
|
+
inputs: ['config', 'iconPack', 'meeting', 'noRenderUntilMeeting', 'showSetupScreen', 'size', 't'],
|
|
3461
|
+
}]
|
|
3462
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3463
|
+
let DyteViewerCount = class DyteViewerCount {
|
|
3464
|
+
constructor(c, r, z) {
|
|
3465
|
+
this.z = z;
|
|
3466
|
+
c.detach();
|
|
3467
|
+
this.el = r.nativeElement;
|
|
3468
|
+
}
|
|
3469
|
+
};
|
|
3470
|
+
DyteViewerCount.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteViewerCount, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3471
|
+
DyteViewerCount.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteViewerCount, selector: "dyte-viewer-count", inputs: { iconPack: "iconPack", meeting: "meeting", t: "t", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3472
|
+
DyteViewerCount = __decorate([
|
|
3473
|
+
ProxyCmp({
|
|
3474
|
+
inputs: ['iconPack', 'meeting', 't', 'variant']
|
|
3475
|
+
})
|
|
3476
|
+
], DyteViewerCount);
|
|
3477
|
+
export { DyteViewerCount };
|
|
3478
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteViewerCount, decorators: [{
|
|
3479
|
+
type: Component,
|
|
3480
|
+
args: [{
|
|
3481
|
+
selector: 'dyte-viewer-count',
|
|
3482
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3483
|
+
template: '<ng-content></ng-content>',
|
|
3484
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3485
|
+
inputs: ['iconPack', 'meeting', 't', 'variant'],
|
|
3486
|
+
}]
|
|
3487
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3488
|
+
let DyteVirtualizedParticipantList = class DyteVirtualizedParticipantList {
|
|
3489
|
+
constructor(c, r, z) {
|
|
3490
|
+
this.z = z;
|
|
3491
|
+
c.detach();
|
|
3492
|
+
this.el = r.nativeElement;
|
|
3493
|
+
}
|
|
3494
|
+
};
|
|
3495
|
+
DyteVirtualizedParticipantList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteVirtualizedParticipantList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3496
|
+
DyteVirtualizedParticipantList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteVirtualizedParticipantList, selector: "dyte-virtualized-participant-list", inputs: { bufferedItemsCount: "bufferedItemsCount", emptyListElement: "emptyListElement", itemHeight: "itemHeight", items: "items", renderItem: "renderItem" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3497
|
+
DyteVirtualizedParticipantList = __decorate([
|
|
3498
|
+
ProxyCmp({
|
|
3499
|
+
inputs: ['bufferedItemsCount', 'emptyListElement', 'itemHeight', 'items', 'renderItem']
|
|
3500
|
+
})
|
|
3501
|
+
], DyteVirtualizedParticipantList);
|
|
3502
|
+
export { DyteVirtualizedParticipantList };
|
|
3503
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteVirtualizedParticipantList, decorators: [{
|
|
3504
|
+
type: Component,
|
|
3505
|
+
args: [{
|
|
3506
|
+
selector: 'dyte-virtualized-participant-list',
|
|
3507
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3508
|
+
template: '<ng-content></ng-content>',
|
|
3509
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3510
|
+
inputs: ['bufferedItemsCount', 'emptyListElement', 'itemHeight', 'items', 'renderItem'],
|
|
3511
|
+
}]
|
|
3512
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3513
|
+
let DyteWaitingScreen = class DyteWaitingScreen {
|
|
3514
|
+
constructor(c, r, z) {
|
|
3515
|
+
this.z = z;
|
|
3516
|
+
c.detach();
|
|
3517
|
+
this.el = r.nativeElement;
|
|
3518
|
+
}
|
|
3519
|
+
};
|
|
3520
|
+
DyteWaitingScreen.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteWaitingScreen, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3521
|
+
DyteWaitingScreen.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DyteWaitingScreen, selector: "dyte-waiting-screen", inputs: { config: "config", iconPack: "iconPack", meeting: "meeting", t: "t" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3522
|
+
DyteWaitingScreen = __decorate([
|
|
3523
|
+
ProxyCmp({
|
|
3524
|
+
inputs: ['config', 'iconPack', 'meeting', 't']
|
|
3525
|
+
})
|
|
3526
|
+
], DyteWaitingScreen);
|
|
3527
|
+
export { DyteWaitingScreen };
|
|
3528
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DyteWaitingScreen, decorators: [{
|
|
3529
|
+
type: Component,
|
|
3530
|
+
args: [{
|
|
3531
|
+
selector: 'dyte-waiting-screen',
|
|
3532
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3533
|
+
template: '<ng-content></ng-content>',
|
|
3534
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3535
|
+
inputs: ['config', 'iconPack', 'meeting', 't'],
|
|
3536
|
+
}]
|
|
3537
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3538
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFeEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7SUFlMUQsTUFBTSxTQUFOLE1BQU07SUFFakIsWUFBWSxDQUFvQixFQUFFLENBQWEsRUFBWSxDQUFTO1FBQVQsTUFBQyxHQUFELENBQUMsQ0FBUTtRQUNsRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWCxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFDMUIsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7Q0FDRixDQUFBO29HQVBZLE1BQU07d0ZBQU4sTUFBTSw2S0FKUCwyQkFBMkI7QUFJMUIsTUFBTTtJQVZsQixRQUFRLENBQUM7UUFDUixNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUM7S0FDekUsQ0FBQztHQVFXLE1BQU0sQ0FPbEI7U0FQWSxNQUFNOzRGQUFOLE1BQU07a0JBUGxCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyx1RUFBdUU7b0JBQ3ZFLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFB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QyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyx1RUFBdUU7b0JBQ3ZFLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQztpQkFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuLyogYXV0by1nZW5lcmF0ZWQgYW5ndWxhciBkaXJlY3RpdmUgcHJveGllcyAqL1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFByb3h5Q21wLCBwcm94eU91dHB1dHMgfSBmcm9tICcuL2FuZ3VsYXItY29tcG9uZW50LWxpYi91dGlscyc7XG5cbmltcG9ydCB7IENvbXBvbmVudHMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZpZXcnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYWknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmlldyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQWkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQWlFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUFpU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVBaSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUFpIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVBaVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1haS10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVBaVRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVBaVRvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQWlUb2dnbGVTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUFpVG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQWlUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUFpVG9nZ2xlU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2luaXRpYWxUcmFuc2NyaXB0aW9ucycsICdtZWV0aW5nJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYWktdHJhbnNjcmlwdGlvbnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2luaXRpYWxUcmFuc2NyaXB0aW9ucycsICdtZWV0aW5nJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUFpVHJhbnNjcmlwdGlvbnMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQWlUcmFuc2NyaXB0aW9uc0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVBaVRyYW5zY3JpcHRpb25zIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQWlUcmFuc2NyaXB0aW9ucyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaGlkZVNlbGYnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWF1ZGlvLWdyaWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdoaWRlU2VsZicsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUF1ZGlvR3JpZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVBdWRpb0dyaWRFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQXVkaW9HcmlkIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQXVkaW9HcmlkIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3BhcnRpY2lwYW50JywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYXVkaW8tdGlsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQXVkaW9UaWxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUF1ZGlvVGlsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVBdWRpb1RpbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVBdWRpb1RpbGUge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaGlkZU11dGVkJywgJ2ljb25QYWNrJywgJ2lzU2NyZWVuU2hhcmUnLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYXVkaW8tdmlzdWFsaXplcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaGlkZU11dGVkJywgJ2ljb25QYWNrJywgJ2lzU2NyZWVuU2hhcmUnLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUF1ZGlvVmlzdWFsaXplciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVBdWRpb1Zpc3VhbGl6ZXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQXVkaW9WaXN1YWxpemVyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQXVkaW9WaXN1YWxpemVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3BhcnRpY2lwYW50JywgJ3NpemUnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWF2YXRhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUF2YXRhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVBdmF0YXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQXZhdGFyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQXZhdGFyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsbG93RGVsZXRlJywgJ2Fzc2lnbmluZ1BhcnRpY2lwYW50cycsICdkZWZhdWx0RXhwYW5kZWQnLCAnaWNvblBhY2snLCAnaXNEcmFnTW9kZScsICdtZWV0aW5nJywgJ21vZGUnLCAncm9vbScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1icmVha291dC1yb29tLW1hbmFnZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsbG93RGVsZXRlJywgJ2Fzc2lnbmluZ1BhcnRpY2lwYW50cycsICdkZWZhdWx0RXhwYW5kZWQnLCAnaWNvblBhY2snLCAnaXNEcmFnTW9kZScsICdtZWV0aW5nJywgJ21vZGUnLCAncm9vbScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQnJlYWtvdXRSb29tTWFuYWdlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVCcmVha291dFJvb21NYW5hZ2VyRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncGFydGljaXBhbnRzQWRkJywgJ3BhcnRpY2lwYW50RGVsZXRlJywgJ3Jvb21Kb2luJywgJ2RlbGV0ZScsICd1cGRhdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUJyZWFrb3V0Um9vbU1hbmFnZXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVCcmVha291dFJvb21NYW5hZ2VyIHtcbiAgLyoqXG4gICAqIEV2ZW50IGZvciBhZGRpbmcgYSBwYXJ0aWNpcGFudFxuICAgKi9cbiAgcGFydGljaXBhbnRzQWRkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVsbD4+O1xuICAvKipcbiAgICogT24gRGVsZXRlIGV2ZW50IGVtaXR0ZXJcbiAgICovXG4gIHBhcnRpY2lwYW50RGVsZXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBjdXN0b21QYXJ0aWNpcGFudElkOiBzdHJpbmc7IH0+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGZvciBqb2luaW5nIGEgcm9vbVxuICAgKi9cbiAgcm9vbUpvaW46IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxudWxsPj47XG4gIC8qKlxuICAgKiBFdmVudCBmb3IgZGVsZXRpbmcgcm9vbVxuICAgKi9cbiAgZGVsZXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBFdmVudCBmb3IgdXBkYXRpbmcgcm9vbSBkZXRhaWxzXG4gICAqL1xuICB1cGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IHRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7IGlkOiBzdHJpbmc7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdwYXJ0aWNpcGFudElkcycsICdzZWxlY3RlZFBhcnRpY2lwYW50SWRzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYnJlYWtvdXQtcm9vbS1wYXJ0aWNpcGFudHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAncGFydGljaXBhbnRJZHMnLCAnc2VsZWN0ZWRQYXJ0aWNpcGFudElkcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVCcmVha291dFJvb21QYXJ0aWNpcGFudHMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQnJlYWtvdXRSb29tUGFydGljaXBhbnRzRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2VsZWN0ZWRQYXJ0aWNpcGFudHNVcGRhdGUnLCAnYWxsUGFydGljaXBhbnRzVG9nZ2xlVXBkYXRlJywgJ3BhcnRpY2lwYW50c0RyYWdnaW5nJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVCcmVha291dFJvb21QYXJ0aWNpcGFudHMgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVCcmVha291dFJvb21QYXJ0aWNpcGFudHMge1xuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiBzZWxlY3RlZCBwYXJ0aWNpcGFudHMgYXJlIHVwZGF0ZWRcbiAgICovXG4gIHNlbGVjdGVkUGFydGljaXBhbnRzVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nW10+PjtcbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gYWxsIHBhcnRpY2lwYW50cyBhcmUgc2VsZWN0ZWQgb3IgZGVzZWxlY3RlZFxuICAgKi9cbiAgYWxsUGFydGljaXBhbnRzVG9nZ2xlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nW10+PjtcbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gcGFydGljaXBhbnRzIGFyZSBkcmFnZ2VkXG4gICAqL1xuICBwYXJ0aWNpcGFudHNEcmFnZ2luZzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1icmVha291dC1yb29tcy1tYW5hZ2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVCcmVha291dFJvb21zTWFuYWdlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVCcmVha291dFJvb21zTWFuYWdlckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgUGFydGlhbFN0YXRlRXZlbnQgYXMgSUR5dGVCcmVha291dFJvb21zTWFuYWdlclBhcnRpYWxTdGF0ZUV2ZW50IH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVCcmVha291dFJvb21zTWFuYWdlciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUJyZWFrb3V0Um9vbXNNYW5hZ2VyIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVCcmVha291dFJvb21zTWFuYWdlclBhcnRpYWxTdGF0ZUV2ZW50Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWJyZWFrb3V0LXJvb21zLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUJyZWFrb3V0Um9vbXNUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQnJlYWtvdXRSb29tc1RvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgUGFydGlhbFN0YXRlRXZlbnQgYXMgSUR5dGVCcmVha291dFJvb21zVG9nZ2xlUGFydGlhbFN0YXRlRXZlbnQgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUJyZWFrb3V0Um9vbXNUb2dnbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVCcmVha291dFJvb21zVG9nZ2xlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVCcmVha291dFJvb21zVG9nZ2xlUGFydGlhbFN0YXRlRXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1icm9hZGNhc3QtbWVzc2FnZS1tb2RhbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQnJvYWRjYXN0TWVzc2FnZU1vZGFsIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUJyb2FkY2FzdE1lc3NhZ2VNb2RhbEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQnJvYWRjYXN0TWVzc2FnZU1vZGFsU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVCcm9hZGNhc3RNZXNzYWdlTW9kYWwgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVCcm9hZGNhc3RNZXNzYWdlTW9kYWwge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUJyb2FkY2FzdE1lc3NhZ2VNb2RhbFN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdraW5kJywgJ3JldmVyc2UnLCAnc2l6ZScsICd0eXBlJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdraW5kJywgJ3JldmVyc2UnLCAnc2l6ZScsICd0eXBlJywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVCdXR0b25FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2FtZXJhLXNlbGVjdG9yJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVDYW1lcmFTZWxlY3RvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDYW1lcmFTZWxlY3RvckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDYW1lcmFTZWxlY3RvciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNhbWVyYVNlbGVjdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2FtZXJhLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2FtZXJhVG9nZ2xlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNhbWVyYVRvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQ2FtZXJhVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDYW1lcmFUb2dnbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVDYW1lcmFUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUNhbWVyYVRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2FwdGlvbi10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2FwdGlvblRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDYXB0aW9uVG9nZ2xlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVDYXB0aW9uVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDYXB0aW9uVG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ2FwdGlvblRvZ2dsZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlQ2FwdGlvblRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhbm5lbC1jcmVhdG9yJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYW5uZWxDcmVhdG9yIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNoYW5uZWxDcmVhdG9yRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJywgJ3N3aXRjaENoYW5uZWwnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUNoYW5uZWxDcmVhdG9yU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGFubmVsQ3JlYXRvciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYW5uZWxDcmVhdG9yIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGFubmVsQ3JlYXRvclN0YXRlcz4+O1xuICAvKipcbiAgICogRW1pdHMgZXZlbnQgdG8gc3dpdGNoIGNoYW5uZWxcbiAgICovXG4gIHN3aXRjaENoYW5uZWw6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hhbm5lbCcsICdpY29uUGFjaycsICdtZW1iZXJzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhbm5lbC1kZXRhaWxzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGFubmVsJywgJ2ljb25QYWNrJywgJ21lbWJlcnMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhbm5lbERldGFpbHMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhbm5lbERldGFpbHNFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ2hhbm5lbERldGFpbHMgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVDaGFubmVsRGV0YWlscyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGFubmVsJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2hvd0JhY2tCdXR0b24nLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1jaGFubmVsLWhlYWRlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2hhbm5lbCcsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3Nob3dCYWNrQnV0dG9uJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYW5uZWxIZWFkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhbm5lbEhlYWRlckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NlYXJjaCcsICdzZWFyY2hEaXNtaXNzZWQnLCAnYmFjayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ2hhbm5lbEhlYWRlciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYW5uZWxIZWFkZXIge1xuICAvKipcbiAgICogZXZlbnQgdHJpZ2dlcmVkIGZvciBzZWFyY2hcbiAgICovXG4gIHNlYXJjaDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogZXZlbnQgdHJpZ2dlcmVkIGZvciBzZWFyY2hcbiAgICovXG4gIHNlYXJjaERpc21pc3NlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGJhY2sgYnV0dG9uIGlzIGNsaWNrZWRcbiAgICovXG4gIGJhY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoYW5uZWxzJywgJ2ljb25QYWNrJywgJ3NlbGVjdGVkQ2hhbm5lbElkJywgJ3Nob3dSZWNlbnRNZXNzYWdlJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhbm5lbC1zZWxlY3Rvci11aScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2hhbm5lbHMnLCAnaWNvblBhY2snLCAnc2VsZWN0ZWRDaGFubmVsSWQnLCAnc2hvd1JlY2VudE1lc3NhZ2UnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhbm5lbFNlbGVjdG9yVWkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhbm5lbFNlbGVjdG9yVWlFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjaGFubmVsQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ2hhbm5lbFNlbGVjdG9yVWkgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVDaGFubmVsU2VsZWN0b3JVaSB7XG4gIC8qKlxuICAgKiBPbiBjaGFubmVsIGNoYW5nZWRcbiAgICovXG4gIGNoYW5uZWxDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoYW5uZWxzJywgJ2Rpc2FibGVTZWFyY2gnLCAnaGlkZUF2YXRhcicsICdpY29uUGFjaycsICdzZWxlY3RlZENoYW5uZWxJZCcsICd0JywgJ3ZpZXdBcyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1jaGFubmVsLXNlbGVjdG9yLXZpZXcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NoYW5uZWxzJywgJ2Rpc2FibGVTZWFyY2gnLCAnaGlkZUF2YXRhcicsICdpY29uUGFjaycsICdzZWxlY3RlZENoYW5uZWxJZCcsICd0JywgJ3ZpZXdBcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhbm5lbFNlbGVjdG9yVmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDaGFubmVsU2VsZWN0b3JWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2hhbm5lbENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgSWNvblBhY2sgYXMgSUR5dGVDaGFubmVsU2VsZWN0b3JWaWV3SWNvblBhY2sgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUNoYW5uZWxTZWxlY3RvclZpZXcgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVDaGFubmVsU2VsZWN0b3JWaWV3IHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBzZWxlY3RlZCBjaGFubmVsIGNoYW5nZXNcbiAgICovXG4gIGNoYW5uZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IGlkOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgYXZhdGFyVXJsPzogc3RyaW5nOyBpY29uPzoga2V5b2YgSUR5dGVDaGFubmVsU2VsZWN0b3JWaWV3SWNvblBhY2s7IGxhdGVzdE1lc3NhZ2U/OiBzdHJpbmc7IGxhdGVzdE1lc3NhZ2VUaW1lPzogRGF0ZTsgdW5yZWFkQ291bnQ/OiBudW1iZXI7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2Rpc2FibGVQcml2YXRlQ2hhdCcsICdkaXNwbGF5RmlsdGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAncHJpdmF0ZVByZXNldEZpbHRlcicsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2Rpc2FibGVQcml2YXRlQ2hhdCcsICdkaXNwbGF5RmlsdGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAncHJpdmF0ZVByZXNldEZpbHRlcicsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQ2hhdFN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ2hhdCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXQge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUNoYXRTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2FuU2VuZEZpbGVzJywgJ2NhblNlbmRUZXh0TWVzc2FnZScsICdjaGFubmVsSWQnLCAnZGlzYWJsZUVtb2ppUGlja2VyJywgJ2ljb25QYWNrJywgJ21lbWJlcnMnLCAncHJlZmlsbCcsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhdC1jb21wb3Nlci11aScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2FuU2VuZEZpbGVzJywgJ2NhblNlbmRUZXh0TWVzc2FnZScsICdjaGFubmVsSWQnLCAnZGlzYWJsZUVtb2ppUGlja2VyJywgJ2ljb25QYWNrJywgJ21lbWJlcnMnLCAncHJlZmlsbCcsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYXRDb21wb3NlclVpIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNoYXRDb21wb3NlclVpRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZU5ld01lc3NhZ2UnLCAnZHl0ZUVkaXRNZXNzYWdlJywgJ2R5dGVFZGl0Q2FuY2VsbGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEeXRlTmV3TWVzc2FnZUV2ZW50IGFzIElEeXRlQ2hhdENvbXBvc2VyVWlEeXRlTmV3TWVzc2FnZUV2ZW50IH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGF0Q29tcG9zZXJVaSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXRDb21wb3NlclVpIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBuZXcgbWVzc2FnZSBpcyBzdWJtaXR0ZWRcbiAgICovXG4gIGR5dGVOZXdNZXNzYWdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0Q29tcG9zZXJVaUR5dGVOZXdNZXNzYWdlRXZlbnQ+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBtZXNzYWdlIGlzIGVkaXRlZFxuICAgKi9cbiAgZHl0ZUVkaXRNZXNzYWdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBpZDogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmc7IGNoYW5uZWxJZD86IHN0cmluZzsgfT4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIG1lc3NhZ2UgZWRpdGluZyBpcyBjYW5jZWxsZWRcbiAgICovXG4gIGR5dGVFZGl0Q2FuY2VsbGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NhblNlbmRGaWxlcycsICdjYW5TZW5kVGV4dE1lc3NhZ2UnLCAnZGlzYWJsZUVtb2ppUGlja2VyJywgJ2ljb25QYWNrJywgJ2lucHV0VGV4dFBsYWNlaG9sZGVyJywgJ2lzRWRpdGluZycsICdtYXhMZW5ndGgnLCAnbWVzc2FnZScsICdxdW90ZWRNZXNzYWdlJywgJ3JhdGVMaW1pdHMnLCAnc3RvcmFnZUtleScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNoYXQtY29tcG9zZXItdmlldycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2FuU2VuZEZpbGVzJywgJ2NhblNlbmRUZXh0TWVzc2FnZScsICdkaXNhYmxlRW1vamlQaWNrZXInLCAnaWNvblBhY2snLCAnaW5wdXRUZXh0UGxhY2Vob2xkZXInLCAnaXNFZGl0aW5nJywgJ21heExlbmd0aCcsICdtZXNzYWdlJywgJ3F1b3RlZE1lc3NhZ2UnLCAncmF0ZUxpbWl0cycsICdzdG9yYWdlS2V5JywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYXRDb21wb3NlclZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhdENvbXBvc2VyVmlld0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ25ld01lc3NhZ2UnLCAnZWRpdE1lc3NhZ2UnLCAnZWRpdENhbmNlbCcsICdxdW90ZWRNZXNzYWdlRGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgTmV3TWVzc2FnZUV2ZW50IGFzIElEeXRlQ2hhdENvbXBvc2VyVmlld05ld01lc3NhZ2VFdmVudCB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ2hhdENvbXBvc2VyVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXRDb21wb3NlclZpZXcge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIG5ldyBtZXNzYWdlIGlzIHN1Ym1pdHRlZFxuICAgKi9cbiAgbmV3TWVzc2FnZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlQ2hhdENvbXBvc2VyVmlld05ld01lc3NhZ2VFdmVudD4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIG1lc3NhZ2UgaXMgZWRpdGVkXG4gICAqL1xuICBlZGl0TWVzc2FnZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIG1lc3NhZ2UgZWRpdGluZyBpcyBjYW5jZWxsZWRcbiAgICovXG4gIGVkaXRDYW5jZWw6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gcXVvdGVkIG1lc3NhZ2UgaXMgZGlzbWlzc2VkXG4gICAqL1xuICBxdW90ZWRNZXNzYWdlRGlzbWlzczogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxpZ25SaWdodCcsICdjYW5EZWxldGUnLCAnY2FuRWRpdCcsICdjYW5QaW4nLCAnY2FuUmVwbHknLCAnY2hpbGQnLCAnZGlzYWJsZUNvbnRyb2xzJywgJ2hpZGVBdmF0YXInLCAnaWNvblBhY2snLCAnaXNDb250aW51ZWQnLCAnaXNTZWxmJywgJ2lzVW5yZWFkJywgJ2xlZnRBbGlnbicsICdtZXNzYWdlJywgJ3NlbmRlckRpc3BsYXlQaWN0dXJlJywgJ3NpemUnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1jaGF0LW1lc3NhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsaWduUmlnaHQnLCAnY2FuRGVsZXRlJywgJ2NhbkVkaXQnLCAnY2FuUGluJywgJ2NhblJlcGx5JywgJ2NoaWxkJywgJ2Rpc2FibGVDb250cm9scycsICdoaWRlQXZhdGFyJywgJ2ljb25QYWNrJywgJ2lzQ29udGludWVkJywgJ2lzU2VsZicsICdpc1VucmVhZCcsICdsZWZ0QWxpZ24nLCAnbWVzc2FnZScsICdzZW5kZXJEaXNwbGF5UGljdHVyZScsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYXRNZXNzYWdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNoYXRNZXNzYWdlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZWRpdCcsICdyZXBseScsICdwaW4nLCAnZGVsZXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBNZXNzYWdlIGFzIElEeXRlQ2hhdE1lc3NhZ2VNZXNzYWdlIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGF0TWVzc2FnZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXRNZXNzYWdlIHtcbiAgLyoqXG4gICAqIEV2ZW50IGZvciB3aGVuIGVkaXQgaXMgY2xpY2tlZCBvbiBhIG1lc3NhZ2VcbiAgICovXG4gIGVkaXQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUNoYXRNZXNzYWdlTWVzc2FnZT4+O1xuICAvKipcbiAgICogRXZlbnQgZm9yIHdoZW4gcmVwbHkgaXMgY2xpY2tlZCBvbiBhIG1lc3NhZ2VcbiAgICovXG4gIHJlcGx5OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZU1lc3NhZ2U+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGZvciB3aGVuIHBpbiBpcyBjbGlja2VkIG9uIGEgbWVzc2FnZVxuICAgKi9cbiAgcGluOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZU1lc3NhZ2U+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGZvciB3aGVuIGVkaXQgaXMgY2xpY2tlZCBvbiBhIG1lc3NhZ2VcbiAgICovXG4gIGRlbGV0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlQ2hhdE1lc3NhZ2VNZXNzYWdlPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NhblBpbk1lc3NhZ2VzJywgJ2ljb25QYWNrJywgJ21lc3NhZ2VzJywgJ3NlbGVjdGVkR3JvdXAnLCAnc2VsZlVzZXJJZCcsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY2hhdC1tZXNzYWdlcy11aScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2FuUGluTWVzc2FnZXMnLCAnaWNvblBhY2snLCAnbWVzc2FnZXMnLCAnc2VsZWN0ZWRHcm91cCcsICdzZWxmVXNlcklkJywgJ3NpemUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhdE1lc3NhZ2VzVWkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhdE1lc3NhZ2VzVWlFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydwaW5NZXNzYWdlJywgJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgTWVzc2FnZSBhcyBJRHl0ZUNoYXRNZXNzYWdlc1VpTWVzc2FnZSB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUNoYXRNZXNzYWdlc1VpU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGF0TWVzc2FnZXNVaSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXRNZXNzYWdlc1VpIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBhIG1lc3NhZ2UgaXMgcGlubmVkIG9yIHVucGlubmVkXG4gICAqL1xuICBwaW5NZXNzYWdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZXNVaU1lc3NhZ2U+PjtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZXNVaVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdsZWZ0QWxpZ24nLCAnbWVldGluZycsICdzZWxlY3RlZENoYW5uZWwnLCAnc2VsZWN0ZWRDaGFubmVsSWQnLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNoYXQtbWVzc2FnZXMtdWktcGFnaW5hdGVkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdsZWZ0QWxpZ24nLCAnbWVldGluZycsICdzZWxlY3RlZENoYW5uZWwnLCAnc2VsZWN0ZWRDaGFubmVsSWQnLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVDaGF0TWVzc2FnZXNVaVBhZ2luYXRlZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDaGF0TWVzc2FnZXNVaVBhZ2luYXRlZEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2VkaXRNZXNzYWdlSW5pdCcsICdwaW5NZXNzYWdlJywgJ2RlbGV0ZU1lc3NhZ2UnLCAnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBUZXh0TWVzc2FnZSBhcyBJRHl0ZUNoYXRNZXNzYWdlc1VpUGFnaW5hdGVkVGV4dE1lc3NhZ2UgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlIGFzIElEeXRlQ2hhdE1lc3NhZ2VzVWlQYWdpbmF0ZWRNZXNzYWdlIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQ2hhdE1lc3NhZ2VzVWlQYWdpbmF0ZWRTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUNoYXRNZXNzYWdlc1VpUGFnaW5hdGVkIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ2hhdE1lc3NhZ2VzVWlQYWdpbmF0ZWQge1xuICAvKipcbiAgICogRXZlbnQgZm9yIGVkaXRpbmcgYSBtZXNzYWdlXG4gICAqL1xuICBlZGl0TWVzc2FnZUluaXQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IHBheWxvYWQ6IElEeXRlQ2hhdE1lc3NhZ2VzVWlQYWdpbmF0ZWRUZXh0TWVzc2FnZTsgZmxhZ3M6IHsgaXNSZXBseT86IGJvb2xlYW47IGlzRWRpdD86IGJvb2xlYW4gfTsgfT4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGEgbWVzc2FnZSBpcyBwaW5uZWQgb3IgdW5waW5uZWRcbiAgICovXG4gIHBpbk1lc3NhZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUNoYXRNZXNzYWdlc1VpUGFnaW5hdGVkTWVzc2FnZT4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGEgbWVzc2FnZSBpcyBkZWxldGVkXG4gICAqL1xuICBkZWxldGVNZXNzYWdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZXNVaVBhZ2luYXRlZE1lc3NhZ2U+PjtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0TWVzc2FnZXNVaVBhZ2luYXRlZFN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGFubmVsSWQnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdxdWVyeScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNoYXQtc2VhcmNoLXJlc3VsdHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NoYW5uZWxJZCcsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3F1ZXJ5JywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNoYXRTZWFyY2hSZXN1bHRzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNoYXRTZWFyY2hSZXN1bHRzRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUNoYXRTZWFyY2hSZXN1bHRzIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ2hhdFNlYXJjaFJlc3VsdHMge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZ3JvdXBzJywgJ2ljb25QYWNrJywgJ3NlbGVjdGVkR3JvdXBJZCcsICdzZWxmVXNlcklkJywgJ3QnLCAndW5yZWFkQ291bnRzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNoYXQtc2VsZWN0b3ItdWknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2dyb3VwcycsICdpY29uUGFjaycsICdzZWxlY3RlZEdyb3VwSWQnLCAnc2VsZlVzZXJJZCcsICd0JywgJ3VucmVhZENvdW50cyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhdFNlbGVjdG9yVWkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ2hhdFNlbGVjdG9yVWlFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlQ2hhdEdyb3VwQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgQ2hhdEdyb3VwQ2hhbmdlZFR5cGUgYXMgSUR5dGVDaGF0U2VsZWN0b3JVaUNoYXRHcm91cENoYW5nZWRUeXBlIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGF0U2VsZWN0b3JVaSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNoYXRTZWxlY3RvclVpIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBjaGF0IHNjb3BlIGlzIGNoYW5nZWRcbiAgICovXG4gIGR5dGVDaGF0R3JvdXBDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVDaGF0U2VsZWN0b3JVaUNoYXRHcm91cENoYW5nZWRUeXBlPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNoYXQtdG9nZ2xlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ2hhdFRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDaGF0VG9nZ2xlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVDaGF0VG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDaGF0VG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ2hhdFRvZ2dsZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlQ2hhdFRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNsb2NrJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJ10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVDbG9jayB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDbG9ja0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDbG9jayBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNsb2NrIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtY29uZmlybWF0aW9uLW1vZGFsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVDb25maXJtYXRpb25Nb2RhbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDb25maXJtYXRpb25Nb2RhbEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlQ29uZmlybWF0aW9uTW9kYWxTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUNvbmZpcm1hdGlvbk1vZGFsIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ29uZmlybWF0aW9uTW9kYWwge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUNvbmZpcm1hdGlvbk1vZGFsU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdkaXNhYmxlUmVuZGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWNvbnRyb2xiYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdkaXNhYmxlUmVuZGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVDb250cm9sYmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUNvbnRyb2xiYXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlQ29udHJvbGJhciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUNvbnRyb2xiYXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYnJhbmRJY29uJywgJ2Rpc2FibGVkJywgJ2ljb24nLCAnaWNvblBhY2snLCAnaXNMb2FkaW5nJywgJ2xhYmVsJywgJ3Nob3dXYXJuaW5nJywgJ3NpemUnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1jb250cm9sYmFyLWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYnJhbmRJY29uJywgJ2Rpc2FibGVkJywgJ2ljb24nLCAnaWNvblBhY2snLCAnaXNMb2FkaW5nJywgJ2xhYmVsJywgJ3Nob3dXYXJuaW5nJywgJ3NpemUnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlQ29udHJvbGJhckJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVDb250cm9sYmFyQnV0dG9uRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUNvbnRyb2xiYXJCdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVDb250cm9sYmFyQnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21pblZhbHVlJywgJ3NpemUnLCAndCcsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1jb3VudGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtaW5WYWx1ZScsICdzaXplJywgJ3QnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUNvdW50ZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlQ291bnRlckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3ZhbHVlQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVDb3VudGVyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlQ291bnRlciB7XG4gIC8qKlxuICAgKiBPbiBjaGFuZ2UgZXZlbnQgZW1pdHRlclxuICAgKi9cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWRlYnVnZ2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZURlYnVnZ2VyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZURlYnVnZ2VyRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVEZWJ1Z2dlclN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRGVidWdnZXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVEZWJ1Z2dlciB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlRGVidWdnZXJTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWRlYnVnZ2VyLWF1ZGlvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZURlYnVnZ2VyQXVkaW8ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRGVidWdnZXJBdWRpb0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVEZWJ1Z2dlckF1ZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlRGVidWdnZXJBdWRpbyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtZGVidWdnZXItc2NyZWVuc2hhcmUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlRGVidWdnZXJTY3JlZW5zaGFyZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVEZWJ1Z2dlclNjcmVlbnNoYXJlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZURlYnVnZ2VyU2NyZWVuc2hhcmUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVEZWJ1Z2dlclNjcmVlbnNoYXJlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1kZWJ1Z2dlci1zeXN0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlRGVidWdnZXJTeXN0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRGVidWdnZXJTeXN0ZW1FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRGVidWdnZXJTeXN0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVEZWJ1Z2dlclN5c3RlbSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1kZWJ1Z2dlci10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVEZWJ1Z2dlclRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVEZWJ1Z2dlclRvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlRGVidWdnZXJUb2dnbGVTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZURlYnVnZ2VyVG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlRGVidWdnZXJUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZURlYnVnZ2VyVG9nZ2xlU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1kZWJ1Z2dlci12aWRlbycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVEZWJ1Z2dlclZpZGVvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZURlYnVnZ2VyVmlkZW9FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRGVidWdnZXJWaWRlbyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZURlYnVnZ2VyVmlkZW8ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2Rpc2FibGVFc2NhcGVLZXknLCAnaGlkZUNsb3NlQnV0dG9uJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnb3BlbicsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWRpYWxvZycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2Rpc2FibGVFc2NhcGVLZXknLCAnaGlkZUNsb3NlQnV0dG9uJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnb3BlbicsICdzaXplJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVEaWFsb2cge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRGlhbG9nRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZURpYWxvZ0Nsb3NlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVEaWFsb2cgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVEaWFsb2cge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGRpYWxvZyBpcyBjbG9zZWRcbiAgICovXG4gIGR5dGVEaWFsb2dDbG9zZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWRpYWxvZy1tYW5hZ2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVEaWFsb2dNYW5hZ2VyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZURpYWxvZ01hbmFnZXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZURpYWxvZ01hbmFnZXJTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZURpYWxvZ01hbmFnZXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVEaWFsb2dNYW5hZ2VyIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVEaWFsb2dNYW5hZ2VyU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2F0dGFjaG1lbnQnLCAnaWNvblBhY2snLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1kcmFmdC1hdHRhY2htZW50LXZpZXcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2F0dGFjaG1lbnQnLCAnaWNvblBhY2snLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlRHJhZnRBdHRhY2htZW50VmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVEcmFmdEF0dGFjaG1lbnRWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZGVsZXRlQXR0YWNobWVudCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRHJhZnRBdHRhY2htZW50VmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZURyYWZ0QXR0YWNobWVudFZpZXcge1xuICAvKipcbiAgICogRXZlbnQgdHJpZ2dlcmVkIHdoZW4gdGhlIGF0dGFjaG1lbnQgaXMgZGVsZXRlZFxuICAgKi9cbiAgZGVsZXRlQXR0YWNobWVudDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydmb2N1c1doZW5PcGVuZWQnLCAnaWNvblBhY2snLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1lbW9qaS1waWNrZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ZvY3VzV2hlbk9wZW5lZCcsICdpY29uUGFjaycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVFbW9qaVBpY2tlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVFbW9qaVBpY2tlckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3BpY2tlckNsb3NlJywgJ2R5dGVFbW9qaUNsaWNrZWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUVtb2ppUGlja2VyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlRW1vamlQaWNrZXIge1xuICAvKipcbiAgICogQ2xvc2UgZXZlbnRcbiAgICovXG4gIHBpY2tlckNsb3NlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKipcbiAgICogRXZlbnQgd2hpY2ggaXMgZW1pdHRlZCB3aGVuIGFuIEVtb2ppIGlzIGNsaWNrZWRcbiAgICovXG4gIGR5dGVFbW9qaUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnaXNBY3RpdmUnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1lbW9qaS1waWNrZXItYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc0FjdGl2ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVFbW9qaVBpY2tlckJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVFbW9qaVBpY2tlckJ1dHRvbkVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVFbW9qaVBpY2tlckJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUVtb2ppUGlja2VyQnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtZW5kZWQtc2NyZWVuJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVFbmRlZFNjcmVlbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVFbmRlZFNjcmVlbkVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVFbmRlZFNjcmVlbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUVuZGVkU2NyZWVuIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2hvc3RFbCcsICdpY29uUGFjaycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWZpbGUtZHJvcHpvbmUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2hvc3RFbCcsICdpY29uUGFjaycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVGaWxlRHJvcHpvbmUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRmlsZURyb3B6b25lRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHJvcENhbGxiYWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVGaWxlRHJvcHpvbmUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVGaWxlRHJvcHpvbmUge1xuICAvKipcbiAgICogZHJvcCBldmVudCBjYWxsYmFja1xuICAgKi9cbiAgZHJvcENhbGxiYWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8RHJhZ0V2ZW50Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ2lzQ29udGludWVkJywgJ21lc3NhZ2UnLCAnbm93JywgJ3Nob3dCdWJibGUnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1maWxlLW1lc3NhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ2lzQ29udGludWVkJywgJ21lc3NhZ2UnLCAnbm93JywgJ3Nob3dCdWJibGUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlRmlsZU1lc3NhZ2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRmlsZU1lc3NhZ2VFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRmlsZU1lc3NhZ2UgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVGaWxlTWVzc2FnZSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICduYW1lJywgJ3NpemUnLCAndXJsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWZpbGUtbWVzc2FnZS12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICduYW1lJywgJ3NpemUnLCAndXJsJ10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVGaWxlTWVzc2FnZVZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlRmlsZU1lc3NhZ2VWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUZpbGVNZXNzYWdlVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUZpbGVNZXNzYWdlVmlldyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydmaWx0ZXInLCAnaWNvbicsICdpY29uUGFjaycsICdsYWJlbCcsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWZpbGUtcGlja2VyLWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZmlsdGVyJywgJ2ljb24nLCAnaWNvblBhY2snLCAnbGFiZWwnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlRmlsZVBpY2tlckJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVGaWxlUGlja2VyQnV0dG9uRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZmlsZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlRmlsZVBpY2tlckJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUZpbGVQaWNrZXJCdXR0b24ge1xuICAvKipcbiAgICogRXZlbnQgd2hlbiBhIGZpbGUgaXMgc2VsZWN0ZWQgZm9yIHVwbG9hZFxuICAgKi9cbiAgZmlsZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PEZpbGU+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd0YXJnZXRFbGVtZW50JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtZnVsbHNjcmVlbi10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndGFyZ2V0RWxlbWVudCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVGdWxsc2NyZWVuVG9nZ2xlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUZ1bGxzY3JlZW5Ub2dnbGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUZ1bGxzY3JlZW5Ub2dnbGVTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUZ1bGxzY3JlZW5Ub2dnbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVGdWxsc2NyZWVuVG9nZ2xlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVGdWxsc2NyZWVuVG9nZ2xlU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FzcGVjdFJhdGlvJywgJ2NvbmZpZycsICdnYXAnLCAnZ3JpZFNpemUnLCAnaWNvblBhY2snLCAnbGF5b3V0JywgJ21lZXRpbmcnLCAnb3ZlcnJpZGVzJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYXNwZWN0UmF0aW8nLCAnY29uZmlnJywgJ2dhcCcsICdncmlkU2l6ZScsICdpY29uUGFjaycsICdsYXlvdXQnLCAnbWVldGluZycsICdvdmVycmlkZXMnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlR3JpZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVHcmlkRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVHcmlkU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVHcmlkIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlR3JpZCB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlR3JpZFN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1ncmlkLXBhZ2luYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVHcmlkUGFnaW5hdGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVHcmlkUGFnaW5hdGlvbkVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVHcmlkUGFnaW5hdGlvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUdyaWRQYWdpbmF0aW9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdkaXNhYmxlUmVuZGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWhlYWRlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2Rpc2FibGVSZW5kZXInLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVIZWFkZXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlSGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlSGVhZGVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb24nLCAnc2l6ZScsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb24nLCAnc2l6ZScsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVJY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUljb25FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlSWNvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUljb24ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1pZGxlLXNjcmVlbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlSWRsZVNjcmVlbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVJZGxlU2NyZWVuRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUlkbGVTY3JlZW4gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVJZGxlU2NyZWVuIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ2lzQ29udGludWVkJywgJ21lc3NhZ2UnLCAnbm93JywgJ3Nob3dCdWJibGUnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1pbWFnZS1tZXNzYWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc0NvbnRpbnVlZCcsICdtZXNzYWdlJywgJ25vdycsICdzaG93QnViYmxlJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUltYWdlTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVJbWFnZU1lc3NhZ2VFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUltYWdlTWVzc2FnZVN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlSW1hZ2VNZXNzYWdlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlSW1hZ2VNZXNzYWdlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVJbWFnZU1lc3NhZ2VTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAndCcsICd1cmwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtaW1hZ2UtbWVzc2FnZS12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICd0JywgJ3VybCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlSW1hZ2VNZXNzYWdlVmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVJbWFnZU1lc3NhZ2VWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncHJldmlldyddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlSW1hZ2VNZXNzYWdlVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUltYWdlTWVzc2FnZVZpZXcge1xuICAvKipcbiAgICogcHJldmlldyBldmVudFxuICAgKi9cbiAgcHJldmlldzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdpbWFnZScsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtaW1hZ2Utdmlld2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdpbWFnZScsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUltYWdlVmlld2VyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUltYWdlVmlld2VyRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2xvc2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUltYWdlVmlld2VyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlSW1hZ2VWaWV3ZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHZpZXdlciBzaG91bGQgYmUgY2xvc2VkXG4gICAqL1xuICBjbG9zZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtaW5mb3JtYXRpb24tdG9vbHRpcCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUluZm9ybWF0aW9uVG9vbHRpcCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVJbmZvcm1hdGlvblRvb2x0aXBFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlSW5mb3JtYXRpb25Ub29sdGlwIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlSW5mb3JtYXRpb25Ub29sdGlwIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdkYXRhQ29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1qb2luLXN0YWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnZGF0YUNvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUpvaW5TdGFnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVKb2luU3RhZ2VFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnLCAnZHl0ZUpvaW5TdGFnZScsICdkeXRlTGVhdmVTdGFnZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlSm9pblN0YWdlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVKb2luU3RhZ2UgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVKb2luU3RhZ2Uge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUpvaW5TdGFnZVN0YXRlcz4+O1xuICAvKipcbiAgICogRXZlbnQgd2hpY2ggaXMgZW1pdHRlZCB3aGVuIHVzZXIgY29uZmlybXMgam9pbmluZyBzdGFnZVxuICAgKi9cbiAgZHl0ZUpvaW5TdGFnZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqXG4gICAqIEV2ZW50IHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiB1c2VyIGNhbmNlbCBqb2luaW5nIHN0YWdlXG4gICAqL1xuICBkeXRlTGVhdmVTdGFnZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbGVhdmUtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTGVhdmVCdXR0b24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlTGVhdmVCdXR0b25FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUxlYXZlQnV0dG9uU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVMZWF2ZUJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUxlYXZlQnV0dG9uIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVMZWF2ZUJ1dHRvblN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWxlYXZlLW1lZXRpbmcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZUxlYXZlTWVldGluZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVMZWF2ZU1lZXRpbmdFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZUxlYXZlTWVldGluZ1N0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTGVhdmVNZWV0aW5nIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTGVhdmVNZWV0aW5nIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVMZWF2ZU1lZXRpbmdTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbGl2ZXN0cmVhbS1pbmRpY2F0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVMaXZlc3RyZWFtSW5kaWNhdG9yIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUxpdmVzdHJlYW1JbmRpY2F0b3JFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTGl2ZXN0cmVhbUluZGljYXRvciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUxpdmVzdHJlYW1JbmRpY2F0b3Ige31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbGl2ZXN0cmVhbS1wbGF5ZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVMaXZlc3RyZWFtUGxheWVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZUxpdmVzdHJlYW1QbGF5ZXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlQVBJRXJyb3InXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUxpdmVzdHJlYW1QbGF5ZXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVMaXZlc3RyZWFtUGxheWVyIHtcbiAgLyoqXG4gICAqIEVtaXQgQVBJIGVycm9yIGV2ZW50c1xuICAgKi9cbiAgZHl0ZUFQSUVycm9yOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyB0cmFjZTogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmc7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1saXZlc3RyZWFtLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTGl2ZXN0cmVhbVRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVMaXZlc3RyZWFtVG9nZ2xlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJywgJ2R5dGVBUElFcnJvciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlTGl2ZXN0cmVhbVRvZ2dsZVN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTGl2ZXN0cmVhbVRvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZUxpdmVzdHJlYW1Ub2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZUxpdmVzdHJlYW1Ub2dnbGVTdGF0ZXM+PjtcbiAgLyoqXG4gICAqIEVtaXQgQVBJIGVycm9yIGV2ZW50c1xuICAgKi9cbiAgZHl0ZUFQSUVycm9yOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyB0cmFjZTogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmc7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2xvZ29VcmwnLCAnbWVldGluZycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLWxvZ28nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdsb2dvVXJsJywgJ21lZXRpbmcnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTG9nbyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVMb2dvRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZUxvZ28gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVMb2dvIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ21heExlbmd0aCcsICd0ZXh0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW1hcmtkb3duLXZpZXcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ21heExlbmd0aCcsICd0ZXh0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVNYXJrZG93blZpZXcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlTWFya2Rvd25WaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZU1hcmtkb3duVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1hcmtkb3duVmlldyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhcHBseURlc2lnblN5c3RlbScsICdjb25maWcnLCAnZ3JpZExheW91dCcsICdpY29uUGFjaycsICdsZWF2ZU9uVW5tb3VudCcsICdsb2FkQ29uZmlnRnJvbVByZXNldCcsICdtZWV0aW5nJywgJ21vZGUnLCAnc2hvd1NldHVwU2NyZWVuJywgJ3NpemUnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1tZWV0aW5nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhcHBseURlc2lnblN5c3RlbScsICdjb25maWcnLCAnZ3JpZExheW91dCcsICdpY29uUGFjaycsICdsZWF2ZU9uVW5tb3VudCcsICdsb2FkQ29uZmlnRnJvbVByZXNldCcsICdtZWV0aW5nJywgJ21vZGUnLCAnc2hvd1NldHVwU2NyZWVuJywgJ3NpemUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTWVldGluZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNZWV0aW5nRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlc1VwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlTWVldGluZ1N0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTWVldGluZyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1lZXRpbmcge1xuICAvKipcbiAgICogU3RhdGVzXG4gICAqL1xuICBkeXRlU3RhdGVzVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVNZWV0aW5nU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1tZWV0aW5nLXRpdGxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU1lZXRpbmdUaXRsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNZWV0aW5nVGl0bGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTWVldGluZ1RpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTWVldGluZ1RpdGxlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ29mZnNldCcsICdwbGFjZW1lbnQnLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW1lbnUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ29mZnNldCcsICdwbGFjZW1lbnQnLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVNZW51IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZU1lbnVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTWVudSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1lbnUge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW1lbnUtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVNZW51SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNZW51SXRlbUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNZW51SXRlbSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1lbnVJdGVtIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbWVudS1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVNZW51TGlzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNZW51TGlzdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNZW51TGlzdCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1lbnVMaXN0IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2VzdGltYXRlSXRlbVNpemUnLCAnaWNvblBhY2snLCAnbG9hZE1vcmUnLCAnbWVzc2FnZXMnLCAncmVuZGVyZXInLCAndmlzaWJsZUl0ZW1zQ291bnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbWVzc2FnZS1saXN0LXZpZXcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2VzdGltYXRlSXRlbVNpemUnLCAnaWNvblBhY2snLCAnbG9hZE1vcmUnLCAnbWVzc2FnZXMnLCAncmVuZGVyZXInLCAndmlzaWJsZUl0ZW1zQ291bnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU1lc3NhZ2VMaXN0VmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNZXNzYWdlTGlzdFZpZXdFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTWVzc2FnZUxpc3RWaWV3IGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTWVzc2FnZUxpc3RWaWV3IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGlvbnMnLCAnYXV0aG9yTmFtZScsICdhdmF0YXJVcmwnLCAnaGlkZUF1dGhvck5hbWUnLCAnaGlkZUF2YXRhcicsICdoaWRlTWV0YWRhdGEnLCAnaWNvblBhY2snLCAndGltZScsICd2YXJpYW50JywgJ3ZpZXdUeXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW1lc3NhZ2UtdmlldycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aW9ucycsICdhdXRob3JOYW1lJywgJ2F2YXRhclVybCcsICdoaWRlQXV0aG9yTmFtZScsICdoaWRlQXZhdGFyJywgJ2hpZGVNZXRhZGF0YScsICdpY29uUGFjaycsICd0aW1lJywgJ3ZhcmlhbnQnLCAndmlld1R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU1lc3NhZ2VWaWV3IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZU1lc3NhZ2VWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWN0aW9uJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNZXNzYWdlVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU1lc3NhZ2VWaWV3IHtcbiAgLyoqXG4gICAqIGFjdGlvbiBldmVudFxuICAgKi9cbiAgYWN0aW9uOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbWljLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTWljVG9nZ2xlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZU1pY1RvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlTWljVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNaWNUb2dnbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVNaWNUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZU1pY1RvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW1pY3JvcGhvbmUtc2VsZWN0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU1pY3JvcGhvbmVTZWxlY3RvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNaWNyb3Bob25lU2VsZWN0b3JFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlTWljcm9waG9uZVNlbGVjdG9yIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTWljcm9waG9uZVNlbGVjdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FzcGVjdFJhdGlvJywgJ2NvbmZpZycsICdnYXAnLCAnZ3JpZFNpemUnLCAnaWNvblBhY2snLCAnbGF5b3V0JywgJ21lZXRpbmcnLCAncGFydGljaXBhbnRzJywgJ3Bpbm5lZFBhcnRpY2lwYW50cycsICdwbHVnaW5zJywgJ3NjcmVlblNoYXJlUGFydGljaXBhbnRzJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbWl4ZWQtZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYXNwZWN0UmF0aW8nLCAnY29uZmlnJywgJ2dhcCcsICdncmlkU2l6ZScsICdpY29uUGFjaycsICdsYXlvdXQnLCAnbWVldGluZycsICdwYXJ0aWNpcGFudHMnLCAncGlubmVkUGFydGljaXBhbnRzJywgJ3BsdWdpbnMnLCAnc2NyZWVuU2hhcmVQYXJ0aWNpcGFudHMnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTWl4ZWRHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZU1peGVkR3JpZEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNaXhlZEdyaWQgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVNaXhlZEdyaWQge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1tb3JlLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTW9yZVRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNb3JlVG9nZ2xlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVNb3JlVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNb3JlVG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTW9yZVRvZ2dsZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlTW9yZVRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW11dGUtYWxsLWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTXV0ZUFsbEJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNdXRlQWxsQnV0dG9uRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVNdXRlQWxsQnV0dG9uU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNdXRlQWxsQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTXV0ZUFsbEJ1dHRvbiB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlTXV0ZUFsbEJ1dHRvblN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW11dGUtYWxsLWNvbmZpcm1hdGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTXV0ZUFsbENvbmZpcm1hdGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVNdXRlQWxsQ29uZmlybWF0aW9uRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVNdXRlQWxsQ29uZmlybWF0aW9uU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVNdXRlQWxsQ29uZmlybWF0aW9uIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTXV0ZUFsbENvbmZpcm1hdGlvbiB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlTXV0ZUFsbENvbmZpcm1hdGlvblN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc1NjcmVlblNoYXJlJywgJ21lZXRpbmcnLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbmFtZS10YWcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ2lzU2NyZWVuU2hhcmUnLCAnbWVldGluZycsICdwYXJ0aWNpcGFudCcsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTmFtZVRhZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVOYW1lVGFnRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZU5hbWVUYWcgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVOYW1lVGFnIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ2lzU2NyZWVuU2hhcmUnLCAnbWVldGluZycsICdwYXJ0aWNpcGFudCcsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW5ldHdvcmstaW5kaWNhdG9yJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc1NjcmVlblNoYXJlJywgJ21lZXRpbmcnLCAncGFydGljaXBhbnQnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlTmV0d29ya0luZGljYXRvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVOZXR3b3JrSW5kaWNhdG9yRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZU5ldHdvcmtJbmRpY2F0b3IgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVOZXR3b3JrSW5kaWNhdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ25vdGlmaWNhdGlvbicsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtbm90aWZpY2F0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdub3RpZmljYXRpb24nLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVOb3RpZmljYXRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlTm90aWZpY2F0aW9uRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZU5vdGlmaWNhdGlvbkRpc21pc3MnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZU5vdGlmaWNhdGlvbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZU5vdGlmaWNhdGlvbiB7XG4gIC8qKlxuICAgKiBEaXNtaXNzIGV2ZW50XG4gICAqL1xuICBkeXRlTm90aWZpY2F0aW9uRGlzbWlzczogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW5vdGlmaWNhdGlvbnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU5vdGlmaWNhdGlvbnMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlTm90aWZpY2F0aW9uc0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVOb3RpZmljYXRpb25zIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlTm90aWZpY2F0aW9ucyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLW92ZXJsYXktbW9kYWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZU92ZXJsYXlNb2RhbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVPdmVybGF5TW9kYWxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZU92ZXJsYXlNb2RhbFN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlT3ZlcmxheU1vZGFsIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlT3ZlcmxheU1vZGFsIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVPdmVybGF5TW9kYWxTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXV0b1Njcm9sbCcsICdjcmVhdGVOb2RlcycsICdlbXB0eUxpc3RMYWJlbCcsICdmZXRjaERhdGEnLCAnaWNvblBhY2snLCAncGFnZVNpemUnLCAncGFnZXNBbGxvd2VkJywgJ3NlbGVjdGVkSXRlbUlkJywgJ3QnXSxcbiAgbWV0aG9kczogWydvbk5ld05vZGUnLCAnb25Ob2RlRGVsZXRlJywgJ29uTm9kZVVwZGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1wYWdpbmF0ZWQtbGlzdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYXV0b1Njcm9sbCcsICdjcmVhdGVOb2RlcycsICdlbXB0eUxpc3RMYWJlbCcsICdmZXRjaERhdGEnLCAnaWNvblBhY2snLCAncGFnZVNpemUnLCAncGFnZXNBbGxvd2VkJywgJ3NlbGVjdGVkSXRlbUlkJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBhZ2luYXRlZExpc3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGFnaW5hdGVkTGlzdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQYWdpbmF0ZWRMaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUGFnaW5hdGVkTGlzdCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdwYXJ0aWNpcGFudCcsICdzdGF0ZXMnLCAndCcsICd2aWV3J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBhcnRpY2lwYW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdwYXJ0aWNpcGFudCcsICdzdGF0ZXMnLCAndCcsICd2aWV3J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQYXJ0aWNpcGFudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQYXJ0aWNpcGFudEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTZW5kTm90aWZpY2F0aW9uJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQYXJ0aWNpcGFudCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBhcnRpY2lwYW50IHtcbiAgLyoqXG4gICAqIEVtaXQgZHl0ZSBub3RpZmljYXRpb25zXG4gICAqL1xuICBkeXRlU2VuZE5vdGlmaWNhdGlvbjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHsgdHJhY2U6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nOyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBhcnRpY2lwYW50LWNvdW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRDb3VudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQYXJ0aWNpcGFudENvdW50RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVBhcnRpY2lwYW50Q291bnQgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudENvdW50IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdpc1ByZXZpZXcnLCAnbmFtZVRhZ1Bvc2l0aW9uJywgJ3BhcnRpY2lwYW50JywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1wYXJ0aWNpcGFudC1zZXR1cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ2lzUHJldmlldycsICduYW1lVGFnUG9zaXRpb24nLCAncGFydGljaXBhbnQnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQYXJ0aWNpcGFudFNldHVwIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVBhcnRpY2lwYW50U2V0dXBFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGFydGljaXBhbnRTZXR1cCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBhcnRpY2lwYW50U2V0dXAge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ2lzUHJldmlldycsICdtZWV0aW5nJywgJ25hbWVUYWdQb3NpdGlvbicsICdwYXJ0aWNpcGFudCcsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcGFydGljaXBhbnQtdGlsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ2lzUHJldmlldycsICdtZWV0aW5nJywgJ25hbWVUYWdQb3NpdGlvbicsICdwYXJ0aWNpcGFudCcsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBhcnRpY2lwYW50VGlsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQYXJ0aWNpcGFudFRpbGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0aWxlTG9hZCcsICd0aWxlVW5sb2FkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBQZWVyIGFzIElEeXRlUGFydGljaXBhbnRUaWxlUGVlciB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGFydGljaXBhbnRUaWxlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUGFydGljaXBhbnRUaWxlIHtcbiAgLyoqXG4gICAqIEV2ZW50IHRyaWdnZXJlZCB3aGVuIHRpbGUgaXMgbG9hZGVkXG4gICAqL1xuICB0aWxlTG9hZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHsgcGFydGljaXBhbnQ6IElEeXRlUGFydGljaXBhbnRUaWxlUGVlcjsgdmlkZW9FbGVtZW50OiBIVE1MVmlkZW9FbGVtZW50IH0+PjtcbiAgLyoqXG4gICAqIEV2ZW50IHRyaWdnZXJlZCB3aGVuIHRpbGUgaXMgdW5sb2FkZWRcbiAgICovXG4gIHRpbGVVbmxvYWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBhcnRpY2lwYW50VGlsZVBlZXI+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2RlZmF1bHRQYXJ0aWNpcGFudHNUYWJJZCcsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcGFydGljaXBhbnRzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnZGVmYXVsdFBhcnRpY2lwYW50c1RhYklkJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVBhcnRpY2lwYW50c0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlUGFydGljaXBhbnRzU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQYXJ0aWNpcGFudHMgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudHMge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBhcnRpY2lwYW50c1N0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3ByZWxvYWRlZEF1ZGlvRWxlbScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBhcnRpY2lwYW50cy1hdWRpbycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdwcmVsb2FkZWRBdWRpb0VsZW0nLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRzQXVkaW8ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGFydGljaXBhbnRzQXVkaW9FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkaWFsb2dDbG9zZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGFydGljaXBhbnRzQXVkaW8gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudHNBdWRpbyB7XG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBleGVjdXRlIHdoZW4gdGhlIGRpYWxvZyBpcyBjbG9zZWRcbiAgICovXG4gIGRpYWxvZ0Nsb3NlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaGlkZUhlYWRlcicsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NlYXJjaCcsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZpZXcnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcGFydGljaXBhbnRzLXN0YWdlLWxpc3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdoaWRlSGVhZGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2VhcmNoJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmlldyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRzU3RhZ2VMaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVBhcnRpY2lwYW50c1N0YWdlTGlzdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQYXJ0aWNpcGFudHNTdGFnZUxpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudHNTdGFnZUxpc3Qge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZpZXcnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcGFydGljaXBhbnRzLXN0YWdlLXF1ZXVlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmlldyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRzU3RhZ2VRdWV1ZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQYXJ0aWNpcGFudHNTdGFnZVF1ZXVlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVBhcnRpY2lwYW50c1N0YWdlUXVldWUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudHNTdGFnZVF1ZXVlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBhcnRpY2lwYW50cy10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQYXJ0aWNpcGFudHNUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGFydGljaXBhbnRzVG9nZ2xlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVQYXJ0aWNpcGFudHNUb2dnbGVTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVBhcnRpY2lwYW50c1RvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBhcnRpY2lwYW50c1RvZ2dsZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlUGFydGljaXBhbnRzVG9nZ2xlU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdoaWRlSGVhZGVyJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2VhcmNoJywgJ3NpemUnLCAndCcsICd2aWV3J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBhcnRpY2lwYW50cy12aWV3ZXItbGlzdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2hpZGVIZWFkZXInLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzZWFyY2gnLCAnc2l6ZScsICd0JywgJ3ZpZXcnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBhcnRpY2lwYW50c1ZpZXdlckxpc3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGFydGljaXBhbnRzVmlld2VyTGlzdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQYXJ0aWNpcGFudHNWaWV3ZXJMaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUGFydGljaXBhbnRzVmlld2VyTGlzdCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmlldyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1wYXJ0aWNpcGFudHMtd2FpdGluZy1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnLCAndmlldyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGFydGljaXBhbnRzV2FpdGluZ0xpc3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGFydGljaXBhbnRzV2FpdGluZ0xpc3RFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGFydGljaXBhbnRzV2FpdGluZ0xpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQYXJ0aWNpcGFudHNXYWl0aW5nTGlzdCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBlcm1pc3Npb25zLW1lc3NhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBlcm1pc3Npb25zTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQZXJtaXNzaW9uc01lc3NhZ2VFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVBlcm1pc3Npb25zTWVzc2FnZVN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGVybWlzc2lvbnNNZXNzYWdlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUGVybWlzc2lvbnNNZXNzYWdlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVQZXJtaXNzaW9uc01lc3NhZ2VTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBpcC10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGlwVG9nZ2xlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVBpcFRvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlUGlwVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQaXBUb2dnbGUgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQaXBUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBpcFRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3BsdWdpbicsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBsdWdpbi1tYWluJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3BsdWdpbicsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQbHVnaW5NYWluIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVBsdWdpbk1haW5FbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGx1Z2luTWFpbiBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBsdWdpbk1haW4ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXBsdWdpbnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUGx1Z2lucyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQbHVnaW5zRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVQbHVnaW5zU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQbHVnaW5zIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUGx1Z2lucyB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlUGx1Z2luc1N0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1wbHVnaW5zLXRvZ2dsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBsdWdpbnNUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUGx1Z2luc1RvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlUGx1Z2luc1RvZ2dsZVN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUGx1Z2luc1RvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBsdWdpbnNUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBsdWdpbnNUb2dnbGVTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAncGVybWlzc2lvbnMnLCAncG9sbCcsICdzZWxmJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcG9sbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAncGVybWlzc2lvbnMnLCAncG9sbCcsICdzZWxmJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVBvbGwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUG9sbEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVWb3RlUG9sbCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUG9sbCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBvbGwge1xuICAvKipcbiAgICogRXZlbnQgd2hpY2ggaXMgZW1pdHRlZCB3aGVuIGEgcG9sbCBpcyB2b3RlZCBvblxuICAgKi9cbiAgZHl0ZVZvdGVQb2xsOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBpZDogc3RyaW5nOyBpbmRleDogbnVtYmVyOyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcG9sbC1mb3JtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQb2xsRm9ybSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQb2xsRm9ybUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVDcmVhdGVQb2xsJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBQb2xsT2JqZWN0IGFzIElEeXRlUG9sbEZvcm1Qb2xsT2JqZWN0IH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVQb2xsRm9ybSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVBvbGxGb3JtIHtcbiAgLyoqXG4gICAqIEV2ZW50IHdoaWNoIGlzIGVtaXR0ZWQgd2hlbiBhIHBvbGwgaXMgY3JlYXRlZFxuICAgKi9cbiAgZHl0ZUNyZWF0ZVBvbGw6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBvbGxGb3JtUG9sbE9iamVjdD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb25maWcnLCAnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtcG9sbHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlUG9sbHMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUG9sbHNFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlUG9sbHMgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVQb2xscyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1wb2xscy10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVQb2xsc1RvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVQb2xsc1RvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlUG9sbHNUb2dnbGVTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVBvbGxzVG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlUG9sbHNUb2dnbGUge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVBvbGxzVG9nZ2xlU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXJlY29yZGluZy1pbmRpY2F0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVSZWNvcmRpbmdJbmRpY2F0b3Ige1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlUmVjb3JkaW5nSW5kaWNhdG9yRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVJlY29yZGluZ0luZGljYXRvciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVJlY29yZGluZ0luZGljYXRvciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXJlY29yZGluZy10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICd0JywgJ3ZhcmlhbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVJlY29yZGluZ1RvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVSZWNvcmRpbmdUb2dnbGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlQVBJRXJyb3InXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVJlY29yZGluZ1RvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVJlY29yZGluZ1RvZ2dsZSB7XG4gIC8qKlxuICAgKiBFbWl0IGFwaSBlcnJvciBldmVudHNcbiAgICovXG4gIGR5dGVBUElFcnJvcjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHsgdHJhY2U6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nOyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXNjcmVlbi1zaGFyZS10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVTY3JlZW5TaGFyZVRvZ2dsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVTY3JlZW5TaGFyZVRvZ2dsZUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZScsICdkeXRlQVBJRXJyb3InXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVNjcmVlblNoYXJlVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTY3JlZW5TaGFyZVRvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNjcmVlblNoYXJlVG9nZ2xlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVTY3JlZW5TaGFyZVRvZ2dsZVN0YXRlcz4+O1xuICAvKipcbiAgICogRW1pdCBhcGkgZXJyb3IgZXZlbnRzXG4gICAqL1xuICBkeXRlQVBJRXJyb3I6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IHRyYWNlOiBzdHJpbmc7IG1lc3NhZ2U6IHN0cmluZzsgfT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydoaWRlRnVsbFNjcmVlbkJ1dHRvbicsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ25hbWVUYWdQb3NpdGlvbicsICdwYXJ0aWNpcGFudCcsICdzaXplJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zY3JlZW5zaGFyZS12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydoaWRlRnVsbFNjcmVlbkJ1dHRvbicsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ25hbWVUYWdQb3NpdGlvbicsICdwYXJ0aWNpcGFudCcsICdzaXplJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU2NyZWVuc2hhcmVWaWV3IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNjcmVlbnNoYXJlVmlld0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZScsICdzY3JlZW5zaGFyZVBsYXknXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVNjcmVlbnNoYXJlVmlld1N0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5pbXBvcnQgdHlwZSB7IFBlZXIgYXMgSUR5dGVTY3JlZW5zaGFyZVZpZXdQZWVyIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTY3JlZW5zaGFyZVZpZXcgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTY3JlZW5zaGFyZVZpZXcge1xuICAvKipcbiAgICogRW1pdHMgdXBkYXRlZCBzdGF0ZSBkYXRhXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVNjcmVlbnNoYXJlVmlld1N0YXRlcz4+O1xuICAvKipcbiAgICogRW1pdHMgd2hlbiB2aWRlbyBwbGF5YmFjayBoYXBwZW5zIHN1Y2Nlc3NmdWxseVxuICAgKi9cbiAgc2NyZWVuc2hhcmVQbGF5OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBwYXJ0aWNpcGFudDogSUR5dGVTY3JlZW5zaGFyZVZpZXdQZWVyOyBzY3JlZW5zaGFyZVBhcnRpY2lwYW50OiBJRHl0ZVNjcmVlbnNoYXJlVmlld1BlZXI7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXNldHRpbmdzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVNldHRpbmdzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNldHRpbmdzRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVTZXR0aW5nc1N0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU2V0dGluZ3MgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTZXR0aW5ncyB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlU2V0dGluZ3NTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXNldHRpbmdzLWF1ZGlvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVNldHRpbmdzQXVkaW8ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlU2V0dGluZ3NBdWRpb0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZVVwZGF0ZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU3RhdGVzIGFzIElEeXRlU2V0dGluZ3NBdWRpb1N0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU2V0dGluZ3NBdWRpbyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNldHRpbmdzQXVkaW8ge1xuICAvKipcbiAgICogRXZlbnQgdXBkYXRlZCBzdGF0ZVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVTZXR0aW5nc0F1ZGlvU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zZXR0aW5ncy10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU2V0dGluZ3NUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlU2V0dGluZ3NUb2dnbGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVNldHRpbmdzVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTZXR0aW5nc1RvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNldHRpbmdzVG9nZ2xlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVTZXR0aW5nc1RvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc2V0dGluZ3MtdmlkZW8nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU2V0dGluZ3NWaWRlbyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVTZXR0aW5nc1ZpZGVvRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVTZXR0aW5nc1ZpZGVvU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTZXR0aW5nc1ZpZGVvIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlU2V0dGluZ3NWaWRlbyB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlXG4gICAqL1xuICBkeXRlU3RhdGVVcGRhdGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVNldHRpbmdzVmlkZW9TdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zZXR1cC1zY3JlZW4nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVNldHVwU2NyZWVuIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNldHVwU2NyZWVuRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVTZXR1cFNjcmVlblN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU2V0dXBTY3JlZW4gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTZXR1cFNjcmVlbiB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlU2V0dXBTY3JlZW5TdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2RlZmF1bHRTZWN0aW9uJywgJ2VuYWJsZWRTZWN0aW9ucycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmlldyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zaWRlYmFyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb25maWcnLCAnZGVmYXVsdFNlY3Rpb24nLCAnZW5hYmxlZFNlY3Rpb25zJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAnc2l6ZScsICdzdGF0ZXMnLCAndCcsICd2aWV3J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVTaWRlYmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNpZGViYXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVNpZGViYXJTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVNpZGViYXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTaWRlYmFyIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVTaWRlYmFyU3RhdGVzPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2N1cnJlbnRUYWInLCAnaGlkZUNsb3NlQWN0aW9uJywgJ2hpZGVIZWFkZXInLCAnaWNvblBhY2snLCAndCcsICd0YWJzJywgJ3ZpZXcnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc2lkZWJhci11aScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY3VycmVudFRhYicsICdoaWRlQ2xvc2VBY3Rpb24nLCAnaGlkZUhlYWRlcicsICdpY29uUGFjaycsICd0JywgJ3RhYnMnLCAndmlldyddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU2lkZWJhclVpIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNpZGViYXJVaUVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RhYkNoYW5nZScsICdzaWRlYmFyQ2xvc2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVNpZGViYXJVaSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNpZGViYXJVaSB7XG4gIC8qKlxuICAgKiBUYWIgY2hhbmdlIGV2ZW50XG4gICAqL1xuICB0YWJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqXG4gICAqIFRhYiBjaGFuZ2UgZXZlbnRcbiAgICovXG4gIHNpZGViYXJDbG9zZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXNwZWN0UmF0aW8nLCAnY29uZmlnJywgJ2dhcCcsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ3BhcnRpY2lwYW50cycsICdzaXplJywgJ3N0YXRlcycsICd0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXNpbXBsZS1ncmlkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhc3BlY3RSYXRpbycsICdjb25maWcnLCAnZ2FwJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAncGFydGljaXBhbnRzJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVNpbXBsZUdyaWQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlU2ltcGxlR3JpZEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTaW1wbGVHcmlkIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlU2ltcGxlR3JpZCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zcGVha2VyLXNlbGVjdG9yJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU3BlYWtlclNlbGVjdG9yIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNwZWFrZXJTZWxlY3RvckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTcGVha2VyU2VsZWN0b3IgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTcGVha2VyU2VsZWN0b3Ige31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS1zcGlubmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdzaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVTcGlubmVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNwaW5uZXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU3Bpbm5lciBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNwaW5uZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXNwZWN0UmF0aW8nLCAnY29uZmlnJywgJ2dhcCcsICdncmlkU2l6ZScsICdpY29uUGFjaycsICdsYXlvdXQnLCAnbWVldGluZycsICdwYXJ0aWNpcGFudHMnLCAncGlubmVkUGFydGljaXBhbnRzJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc3BvdGxpZ2h0LWdyaWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FzcGVjdFJhdGlvJywgJ2NvbmZpZycsICdnYXAnLCAnZ3JpZFNpemUnLCAnaWNvblBhY2snLCAnbGF5b3V0JywgJ21lZXRpbmcnLCAncGFydGljaXBhbnRzJywgJ3Bpbm5lZFBhcnRpY2lwYW50cycsICdzaXplJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVTcG90bGlnaHRHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVNwb3RsaWdodEdyaWRFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU3BvdGxpZ2h0R3JpZCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVNwb3RsaWdodEdyaWQge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc3BvdGxpZ2h0LWluZGljYXRvcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVNwb3RsaWdodEluZGljYXRvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVTcG90bGlnaHRJbmRpY2F0b3JFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU3BvdGxpZ2h0SW5kaWNhdG9yIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlU3BvdGxpZ2h0SW5kaWNhdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc3RhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVN0YWdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVN0YWdlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZHl0ZVN0YXRlVXBkYXRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTdGF0ZXMgYXMgSUR5dGVTdGFnZVN0YXRlcyB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlU3RhZ2UgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTdGFnZSB7XG4gIC8qKlxuICAgKiBFbWl0cyB1cGRhdGVkIHN0YXRlIGRhdGFcbiAgICovXG4gIGR5dGVTdGF0ZVVwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlU3RhZ2VTdGF0ZXM+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvblBhY2snLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc3RhZ2UtdG9nZ2xlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3NpemUnLCAnc3RhdGVzJywgJ3QnLCAndmFyaWFudCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlU3RhZ2VUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlU3RhZ2VUb2dnbGVFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlU3RhdGVVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVN0YWdlVG9nZ2xlU3RhdGVzIH0gZnJvbSAnQGR5dGVzZGsvdWkta2l0JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTdGFnZVRvZ2dsZSBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVN0YWdlVG9nZ2xlIHtcbiAgLyoqXG4gICAqIEVtaXRzIHVwZGF0ZWQgc3RhdGUgZGF0YVxuICAgKi9cbiAgZHl0ZVN0YXRlVXBkYXRlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUR5dGVTdGFnZVRvZ2dsZVN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ljb25QYWNrJywgJ3JlYWRvbmx5JywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtc3dpdGNoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ljb25QYWNrJywgJ3JlYWRvbmx5JywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVN3aXRjaCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVTd2l0Y2hFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVTd2l0Y2ggZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVTd2l0Y2gge1xuICAvKipcbiAgICogRXZlbnQgd2hlbiBzd2l0Y2ggdmFsdWUgaXMgY2hhbmdlZFxuICAgKi9cbiAgZHl0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlVGFiJywgJ2NvbmZpZycsICdpY29uUGFjaycsICdsYXlvdXQnLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3RhYnMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtdGFiLWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlVGFiJywgJ2NvbmZpZycsICdpY29uUGFjaycsICdsYXlvdXQnLCAnbWVldGluZycsICdzaXplJywgJ3N0YXRlcycsICd0JywgJ3RhYnMnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVRhYkJhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVUYWJCYXJFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0YWJDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFRhYiBhcyBJRHl0ZVRhYkJhclRhYiB9IGZyb20gJ0BkeXRlc2RrL3VpLWtpdCc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlVGFiQmFyIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlVGFiQmFyIHtcbiAgLyoqXG4gICAqIFNldCBhY3RpdmUgdGFiXG4gICAqL1xuICB0YWJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJRHl0ZVRhYkJhclRhYj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpY29uUGFjaycsICdrZXlEb3duSGFuZGxlcicsICdtYXhMZW5ndGgnLCAncGxhY2Vob2xkZXInLCAncmF0ZUxpbWl0QnJlYWNoZWQnLCAndCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldFRleHQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtdGV4dC1jb21wb3Nlci12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpY29uUGFjaycsICdrZXlEb3duSGFuZGxlcicsICdtYXhMZW5ndGgnLCAncGxhY2Vob2xkZXInLCAncmF0ZUxpbWl0QnJlYWNoZWQnLCAndCcsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlVGV4dENvbXBvc2VyVmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVUZXh0Q29tcG9zZXJWaWV3RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndGV4dENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlVGV4dENvbXBvc2VyVmlldyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVRleHRDb21wb3NlclZpZXcge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRleHQgY2hhbmdlc1xuICAgKi9cbiAgdGV4dENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc0NvbnRpbnVlZCcsICdtZXNzYWdlJywgJ25vdycsICdzaG93QnViYmxlJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtdGV4dC1tZXNzYWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uUGFjaycsICdpc0NvbnRpbnVlZCcsICdtZXNzYWdlJywgJ25vdycsICdzaG93QnViYmxlJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVRleHRNZXNzYWdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVRleHRNZXNzYWdlRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVRleHRNZXNzYWdlIGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlVGV4dE1lc3NhZ2Uge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaXNNYXJrZG93bicsICd0ZXh0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXRleHQtbWVzc2FnZS12aWV3JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpc01hcmtkb3duJywgJ3RleHQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVRleHRNZXNzYWdlVmlldyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVUZXh0TWVzc2FnZVZpZXdFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlVGV4dE1lc3NhZ2VWaWV3IGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlVGV4dE1lc3NhZ2VWaWV3IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RlbGF5JywgJ2Rpc2FibGVkJywgJ2tpbmQnLCAnbGFiZWwnLCAnb3BlbicsICdwbGFjZW1lbnQnLCAnc2l6ZScsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkeXRlLXRvb2x0aXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RlbGF5JywgJ2Rpc2FibGVkJywgJ2tpbmQnLCAnbGFiZWwnLCAnb3BlbicsICdwbGFjZW1lbnQnLCAnc2l6ZScsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVUb29sdGlwIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVRvb2x0aXBFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkeXRlT3BlbkNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlVG9vbHRpcCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVRvb2x0aXAge1xuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBjYWxsZWQgd2hlbiB0aGUgb3BlbiBzdGF0ZSBvZiB0aGUgdG9vbHRpcCBjaGFuZ2VzLlxuICAgKi9cbiAgZHl0ZU9wZW5DaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3QnLCAndHJhbnNjcmlwdCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS10cmFuc2NyaXB0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWyd0JywgJ3RyYW5zY3JpcHQnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVRyYW5zY3JpcHQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlVHJhbnNjcmlwdEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVUcmFuc2NyaXB0RGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEeXRlVHJhbnNjcmlwdCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVRyYW5zY3JpcHQge1xuICAvKipcbiAgICogRGlzbWlzcyBldmVudFxuICAgKi9cbiAgZHl0ZVRyYW5zY3JpcHREaXNtaXNzOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBpZDogc3RyaW5nOyByZW5kZXJlZElkOiBzdHJpbmc7IH0+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ21lZXRpbmcnLCAnc3RhdGVzJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtdHJhbnNjcmlwdHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdtZWV0aW5nJywgJ3N0YXRlcycsICd0J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVUcmFuc2NyaXB0cyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVUcmFuc2NyaXB0c0VsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVUcmFuc2NyaXB0cyBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVRyYW5zY3JpcHRzIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ25vUmVuZGVyVW50aWxNZWV0aW5nJywgJ3Nob3dTZXR1cFNjcmVlbicsICdzaXplJywgJ3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R5dGUtdWktcHJvdmlkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbmZpZycsICdpY29uUGFjaycsICdtZWV0aW5nJywgJ25vUmVuZGVyVW50aWxNZWV0aW5nJywgJ3Nob3dTZXR1cFNjcmVlbicsICdzaXplJywgJ3QnXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVVpUHJvdmlkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxEeXRlVWlQcm92aWRlckVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2R5dGVTdGF0ZXNVcGRhdGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFN0YXRlcyBhcyBJRHl0ZVVpUHJvdmlkZXJTdGF0ZXMgfSBmcm9tICdAZHl0ZXNkay91aS1raXQnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVVpUHJvdmlkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVVaVByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIFN0YXRlcyBldmVudFxuICAgKi9cbiAgZHl0ZVN0YXRlc1VwZGF0ZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElEeXRlVWlQcm92aWRlclN0YXRlcz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uUGFjaycsICdtZWV0aW5nJywgJ3QnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS12aWV3ZXItY291bnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCcsICd2YXJpYW50J10sXG59KVxuZXhwb3J0IGNsYXNzIER5dGVWaWV3ZXJDb3VudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVWaWV3ZXJDb3VudEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIER5dGVWaWV3ZXJDb3VudCBleHRlbmRzIENvbXBvbmVudHMuRHl0ZVZpZXdlckNvdW50IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2J1ZmZlcmVkSXRlbXNDb3VudCcsICdlbXB0eUxpc3RFbGVtZW50JywgJ2l0ZW1IZWlnaHQnLCAnaXRlbXMnLCAncmVuZGVySXRlbSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS12aXJ0dWFsaXplZC1wYXJ0aWNpcGFudC1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydidWZmZXJlZEl0ZW1zQ291bnQnLCAnZW1wdHlMaXN0RWxlbWVudCcsICdpdGVtSGVpZ2h0JywgJ2l0ZW1zJywgJ3JlbmRlckl0ZW0nXSxcbn0pXG5leHBvcnQgY2xhc3MgRHl0ZVZpcnR1YWxpemVkUGFydGljaXBhbnRMaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRHl0ZVZpcnR1YWxpemVkUGFydGljaXBhbnRMaXN0RWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVZpcnR1YWxpemVkUGFydGljaXBhbnRMaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5EeXRlVmlydHVhbGl6ZWRQYXJ0aWNpcGFudExpc3Qge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHl0ZS13YWl0aW5nLXNjcmVlbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29uZmlnJywgJ2ljb25QYWNrJywgJ21lZXRpbmcnLCAndCddLFxufSlcbmV4cG9ydCBjbGFzcyBEeXRlV2FpdGluZ1NjcmVlbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTER5dGVXYWl0aW5nU2NyZWVuRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRHl0ZVdhaXRpbmdTY3JlZW4gZXh0ZW5kcyBDb21wb25lbnRzLkR5dGVXYWl0aW5nU2NyZWVuIHt9XG5cblxuIl19
|