@mediusinc/mng-commons 5.3.0-rc.3 → 5.3.0-rc.4
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/core/data-list/data-list.model.d.ts +1 -1
- package/core/data-providers/lookup.data-provider.d.ts +5 -5
- package/core/descriptors/lookup.descriptor.d.ts +3 -3
- package/core/descriptors/table.descriptor.d.ts +1 -1
- package/esm2022/core/data-list/data-list-params-helpers.mjs +1 -1
- package/esm2022/core/data-list/data-list.model.mjs +1 -1
- package/esm2022/core/data-providers/lookup.data-provider.mjs +1 -1
- package/esm2022/core/descriptors/lookup.descriptor.mjs +1 -1
- package/esm2022/core/descriptors/table.descriptor.mjs +1 -1
- package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +60 -2
- package/esm2022/filter/descriptors/filter.descriptor.mjs +118 -8
- package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +17 -6
- package/esm2022/form/api/data-providers/lookup.data-provider.mjs +1 -1
- package/esm2022/form/components/autocomplete/autocomplete.component.mjs +1 -1
- package/esm2022/form/components/dropdown/dropdown.component.mjs +1 -1
- package/esm2022/model/helpers/model.mjs +1 -1
- package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +16 -7
- package/esm2022/table/api/descriptors/column.descriptor.mjs +125 -4
- package/esm2022/table/api/descriptors/sort.descriptor.mjs +23 -1
- package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +1 -1
- package/esm2022/table/api/descriptors/table.descriptor.mjs +424 -43
- package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +7 -0
- package/esm2022/table/api/index.mjs +2 -1
- package/esm2022/table/api/models/table-columns.model.mjs +1 -1
- package/esm2022/table/components/table/table.component.mjs +4 -4
- package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +6 -6
- package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +2 -2
- package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +1 -1
- package/esm2022/tableview/api/index.mjs +2 -1
- package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +16 -7
- package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +1 -1
- package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +5 -5
- package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +7 -0
- package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +1 -1
- package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-filter.mjs +176 -8
- package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form-api.mjs +16 -5
- package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api.mjs +591 -52
- package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table.mjs +3 -3
- package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +32 -17
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
- package/filter/descriptors/filter-lookup.descriptor.d.ts +70 -12
- package/filter/descriptors/filter.descriptor.d.ts +116 -5
- package/form/api/data-providers/lookup-data-provider.factory.d.ts +16 -12
- package/form/api/data-providers/lookup.data-provider.d.ts +5 -5
- package/form/components/autocomplete/autocomplete.component.d.ts +1 -1
- package/form/components/dropdown/dropdown.component.d.ts +1 -1
- package/model/helpers/model.d.ts +1 -1
- package/package.json +1 -1
- package/table/api/data-providers/table-data-provider.factory.d.ts +9 -5
- package/table/api/descriptors/column.descriptor.d.ts +126 -5
- package/table/api/descriptors/sort.descriptor.d.ts +22 -0
- package/table/api/descriptors/table-descriptor.factory.d.ts +8 -4
- package/table/api/descriptors/table.descriptor.d.ts +421 -27
- package/table/api/helpers/table-data-provider-descriptor-convert.d.ts +20 -0
- package/table/api/index.d.ts +1 -0
- package/table/api/models/table-columns.model.d.ts +6 -6
- package/table/components/column-filter/column-filter.component.d.ts +1 -1
- package/table/components/filter/filter-form/filter-form.component.d.ts +1 -1
- package/tableview/action/components/localization/data-language-dropdown.component.d.ts +1 -1
- package/tableview/api/editor/descriptors/editor.descriptor.d.ts +11 -11
- package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +1 -1
- package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +12 -12
- package/tableview/api/index.d.ts +1 -0
- package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +9 -5
- package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +10 -6
- package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +17 -17
- package/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.d.ts +20 -0
- package/version-info.json +5 -5
|
@@ -5,7 +5,6 @@ export class FilterDescriptor {
|
|
|
5
5
|
this._filterType = FilterTypeEnum.String;
|
|
6
6
|
// default value
|
|
7
7
|
this._hasDefaultValue = false;
|
|
8
|
-
this._matchModes = null;
|
|
9
8
|
this._numberUseGrouping = true;
|
|
10
9
|
this._className = '';
|
|
11
10
|
this._columnClassName = '';
|
|
@@ -95,32 +94,72 @@ export class FilterDescriptor {
|
|
|
95
94
|
get title() {
|
|
96
95
|
return this._title;
|
|
97
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Converts filter to given type.
|
|
99
|
+
*
|
|
100
|
+
* @param filterType Filter type.
|
|
101
|
+
*/
|
|
98
102
|
asFilterType(filterType) {
|
|
99
103
|
this._filterType = filterType;
|
|
100
104
|
return this;
|
|
101
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Set filter as date type.
|
|
108
|
+
*
|
|
109
|
+
* @param opts Additional options.
|
|
110
|
+
*/
|
|
102
111
|
asDate(opts) {
|
|
103
112
|
this._filterType = FilterTypeEnum.Date;
|
|
104
113
|
this.withDisplayFormat(opts?.displayFormat).withDatePickerDisplay(opts).withDateValue(opts);
|
|
105
114
|
return this;
|
|
106
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Set filter as number type.
|
|
118
|
+
*
|
|
119
|
+
* @param opts Additional options.
|
|
120
|
+
*/
|
|
107
121
|
asNumber(opts) {
|
|
108
122
|
this._filterType = FilterTypeEnum.Number;
|
|
109
123
|
this.withDisplayFormat(opts?.displayFormat).withNumberFractions(opts?.minFractionDigits, opts?.maxFractionDigits).withLocale(opts?.locale);
|
|
110
124
|
return this;
|
|
111
125
|
}
|
|
126
|
+
/**
|
|
127
|
+
* Shows filter on column for given property.
|
|
128
|
+
*
|
|
129
|
+
* @param property Column property to show filter on.
|
|
130
|
+
* @param displayType Optional display type override. If not column, the filter will not be shown on column.
|
|
131
|
+
*/
|
|
112
132
|
withShowOnColumn(property, displayType = FilterDisplayTypeEnum.Column) {
|
|
113
133
|
return this.withShowOnColumnUnsafe(property, displayType);
|
|
114
134
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
135
|
+
/**
|
|
136
|
+
* Shows filter on column for given property.
|
|
137
|
+
*
|
|
138
|
+
* This function is UNSAFE.
|
|
139
|
+
*
|
|
140
|
+
* @param property Column property to show filter on.
|
|
141
|
+
* @param displayType Optional display type override. If not column, the filter will not be shown on column.
|
|
142
|
+
*/
|
|
119
143
|
withShowOnColumnUnsafe(property, displayType = FilterDisplayTypeEnum.Column) {
|
|
120
144
|
this._showOnColumn = property;
|
|
121
145
|
this._displayType = displayType;
|
|
122
146
|
return this;
|
|
123
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* Changes display type of filter.
|
|
150
|
+
*
|
|
151
|
+
* @param type Display type.
|
|
152
|
+
*/
|
|
153
|
+
withDisplayType(type) {
|
|
154
|
+
this._displayType = type;
|
|
155
|
+
return this;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Sets default filter value for filter.
|
|
159
|
+
*
|
|
160
|
+
* @param value Value for default filter.
|
|
161
|
+
* @param matchMode Match mode for default filter.
|
|
162
|
+
*/
|
|
124
163
|
withDefaultFilter(value, matchMode) {
|
|
125
164
|
this._hasDefaultValue = true;
|
|
126
165
|
this._defaultValue = value;
|
|
@@ -143,20 +182,42 @@ export class FilterDescriptor {
|
|
|
143
182
|
LoggerService.get().debug(`WARNING: Default filter match mode '${matchMode}' could not be assigned for property ${this._property}.`);
|
|
144
183
|
}
|
|
145
184
|
}
|
|
185
|
+
/**
|
|
186
|
+
* Sets format for display of filter value (applies to date and number).
|
|
187
|
+
*
|
|
188
|
+
* @param format Format (Angular formatting rules apply).
|
|
189
|
+
* @param applyToField If the format should also be applied to field on filter editing form.
|
|
190
|
+
*/
|
|
146
191
|
withDisplayFormat(format, applyToField) {
|
|
147
192
|
this._displayFormat = format;
|
|
148
193
|
this._displayFormatApplyToField = applyToField;
|
|
149
194
|
return this;
|
|
150
195
|
}
|
|
196
|
+
/**
|
|
197
|
+
* Sets locale for filter.
|
|
198
|
+
*
|
|
199
|
+
* @param locale Locale.
|
|
200
|
+
*/
|
|
151
201
|
withLocale(locale) {
|
|
152
202
|
this._locale = locale;
|
|
153
203
|
return this;
|
|
154
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Sets fraction for number filter editing field.
|
|
207
|
+
*
|
|
208
|
+
* @param min Min fraction digits (i.e. digits after decimal).
|
|
209
|
+
* @param max Max fraction digits (i.e. digits after decimal).
|
|
210
|
+
*/
|
|
155
211
|
withNumberFractions(min, max) {
|
|
156
212
|
this._numberMinFractionDigits = min;
|
|
157
213
|
this._numberMaxFractionDigits = max;
|
|
158
214
|
return this;
|
|
159
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* If number grouping should be used.
|
|
218
|
+
*
|
|
219
|
+
* @param useGrouping Enables/disbaled the feature.
|
|
220
|
+
*/
|
|
160
221
|
withNumberGrouping(useGrouping = true) {
|
|
161
222
|
this._numberUseGrouping = useGrouping;
|
|
162
223
|
return this;
|
|
@@ -170,6 +231,11 @@ export class FilterDescriptor {
|
|
|
170
231
|
this._datePickerShowSeconds = showSeconds;
|
|
171
232
|
return this;
|
|
172
233
|
}
|
|
234
|
+
/**
|
|
235
|
+
* Sets date picker display options.
|
|
236
|
+
*
|
|
237
|
+
* @param opts Options.
|
|
238
|
+
*/
|
|
173
239
|
withDatePickerDisplay(opts) {
|
|
174
240
|
this._displayFormatApplyToField = opts?.applyFromDisplayFormat;
|
|
175
241
|
this._datePickerFormat = opts?.format;
|
|
@@ -177,41 +243,85 @@ export class FilterDescriptor {
|
|
|
177
243
|
this._datePickerShowSeconds = opts?.showSeconds;
|
|
178
244
|
return this;
|
|
179
245
|
}
|
|
246
|
+
/**
|
|
247
|
+
* Sets filter date value formatting options.
|
|
248
|
+
*
|
|
249
|
+
* @param opts Options.
|
|
250
|
+
*/
|
|
180
251
|
withDateValue(opts) {
|
|
181
252
|
this._dateValueUtc = opts?.utc;
|
|
182
253
|
this._dateValueNoTimezone = opts?.noTimeZone;
|
|
183
254
|
this._dateValueNoTime = opts?.noTime;
|
|
184
255
|
return this;
|
|
185
256
|
}
|
|
257
|
+
/**
|
|
258
|
+
* Sets placeholder for filter field.
|
|
259
|
+
*
|
|
260
|
+
* @param placeholder Text for placeholder.
|
|
261
|
+
*/
|
|
186
262
|
withPlaceholder(placeholder) {
|
|
187
263
|
this._placeholder = placeholder;
|
|
188
264
|
return this;
|
|
189
265
|
}
|
|
266
|
+
/**
|
|
267
|
+
* Sets class name for filter.
|
|
268
|
+
*
|
|
269
|
+
* @param className Class name.
|
|
270
|
+
*/
|
|
190
271
|
withClassName(className) {
|
|
191
272
|
this._className = className;
|
|
192
273
|
return this;
|
|
193
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Sets class name for column display type.
|
|
277
|
+
*
|
|
278
|
+
* @param className Class name for column.
|
|
279
|
+
*/
|
|
194
280
|
withColumnClassName(className) {
|
|
195
281
|
this._columnClassName = className;
|
|
196
282
|
return this;
|
|
197
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* Set column width for column display type.
|
|
286
|
+
*
|
|
287
|
+
* @param width Relative width (in percentage) of table width:
|
|
288
|
+
* @param minWidth
|
|
289
|
+
*/
|
|
198
290
|
withColumnWidth(width, minWidth) {
|
|
199
291
|
this._columnWidth = width ?? null;
|
|
200
292
|
this._columnMinWidth = minWidth ?? null;
|
|
201
293
|
return this;
|
|
202
294
|
}
|
|
295
|
+
/**
|
|
296
|
+
* Sets input trimming for filter value field.
|
|
297
|
+
*
|
|
298
|
+
* @param trimOption Trim setting.
|
|
299
|
+
*/
|
|
203
300
|
withInputTrimming(trimOption = 'both') {
|
|
204
301
|
this._inputTrim = trimOption;
|
|
205
302
|
return this;
|
|
206
303
|
}
|
|
304
|
+
/**
|
|
305
|
+
* Sets range of match modes for this filter. If non provided, the defaults are applied.
|
|
306
|
+
*
|
|
307
|
+
* @param matchModes Match mode options.
|
|
308
|
+
*/
|
|
207
309
|
withMatchModes(matchModes) {
|
|
208
310
|
this._matchModes = matchModes;
|
|
209
311
|
return this;
|
|
210
312
|
}
|
|
211
|
-
|
|
212
|
-
|
|
313
|
+
/**
|
|
314
|
+
* Filter title. If non provided, the defaults are applied.
|
|
315
|
+
*
|
|
316
|
+
* @param title Title for the field.
|
|
317
|
+
*/
|
|
318
|
+
withTitle(title) {
|
|
319
|
+
this._title = title;
|
|
213
320
|
return this;
|
|
214
321
|
}
|
|
322
|
+
/**
|
|
323
|
+
* Copies current descriptor to a new instance.
|
|
324
|
+
*/
|
|
215
325
|
copy() {
|
|
216
326
|
const descriptor = new FilterDescriptor(this._property);
|
|
217
327
|
this.copyFieldsTo(descriptor);
|
|
@@ -239,4 +349,4 @@ export class FilterDescriptor {
|
|
|
239
349
|
descriptor._columnClassName = this._columnClassName;
|
|
240
350
|
}
|
|
241
351
|
}
|
|
242
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmRlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9maWx0ZXIvc3JjL2Rlc2NyaXB0b3JzL2ZpbHRlci5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxvQkFBb0IsRUFBa0QsYUFBYSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFHaEksT0FBTyxFQUFDLHFCQUFxQixFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBa0M3RSxNQUFNLE9BQU8sZ0JBQWdCO0lBdUN6QixZQUFZLFFBQWdCO1FBbkNsQixnQkFBVyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFHOUMsZ0JBQWdCO1FBQ04scUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBR3pCLGdCQUFXLEdBQW9CLElBQUksQ0FBQztRQVVwQyx1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFXMUIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsaUJBQVksR0FBa0IsSUFBSSxDQUFDO1FBQ25DLG9CQUFlLEdBQWtCLElBQUksQ0FBQztRQUs1QyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBVyxXQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFB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QUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25zSW50ZXJuYWxFcnJvciwgRmlsdGVyTWF0Y2hNb2RlRXh0ZW5kZWRUeXBlLCBJRmlsdGVyRGVzY3JpcHRvciwgTG9nZ2VyU2VydmljZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7SW5wdXRUcmltVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9mb3JtL2FwaSc7XG5cbmltcG9ydCB7RmlsdGVyRGlzcGxheVR5cGVFbnVtLCBGaWx0ZXJUeXBlRW51bX0gZnJvbSAnLi4vbW9kZWxzL2ZpbHRlci5tb2RlbCc7XG5cbmV4cG9ydCB0eXBlIEZpbHRlckRhdGVQaWNrZXJEaXNwbGF5T3B0c1R5cGUgPSB7XG4gICAgYXBwbHlGcm9tRGlzcGxheUZvcm1hdD86IGJvb2xlYW47XG4gICAgZm9ybWF0Pzogc3RyaW5nO1xuICAgIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgICBzaG93U2Vjb25kcz86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJEYXRlVmFsdWVPcHRzVHlwZSA9IHtcbiAgICB1dGM/OiBib29sZWFuO1xuICAgIG5vVGltZT86IGJvb2xlYW47XG4gICAgbm9UaW1lWm9uZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJEYXRlT3B0c1R5cGUgPSBGaWx0ZXJEYXRlVmFsdWVPcHRzVHlwZSAmXG4gICAgRmlsdGVyRGF0ZVBpY2tlckRpc3BsYXlPcHRzVHlwZSAmIHtcbiAgICAgICAgZGlzcGxheUZvcm1hdD86IHN0cmluZztcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJOdW1iZXJGcmFjdGlvbk9wdHNUeXBlID0ge1xuICAgIG1pbkZyYWN0aW9uRGlnaXRzPzogbnVtYmVyO1xuICAgIG1heEZyYWN0aW9uRGlnaXRzPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgRmlsdGVyTG9jYWxlT3B0c1R5cGUgPSB7XG4gICAgbG9jYWxlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgRmlsdGVyTnVtYmVyT3B0c1R5cGUgPSBGaWx0ZXJOdW1iZXJGcmFjdGlvbk9wdHNUeXBlICZcbiAgICBGaWx0ZXJMb2NhbGVPcHRzVHlwZSAmIHtcbiAgICAgICAgZGlzcGxheUZvcm1hdD86IHN0cmluZztcbiAgICB9O1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4gaW1wbGVtZW50cyBJRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4ge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfcHJvcGVydHk6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX3Nob3dPbkNvbHVtbj86IHN0cmluZztcblxuICAgIHByb3RlY3RlZCBfZmlsdGVyVHlwZSA9IEZpbHRlclR5cGVFbnVtLlN0cmluZztcbiAgICBwcm90ZWN0ZWQgX2Rpc3BsYXlUeXBlPzogRmlsdGVyRGlzcGxheVR5cGVFbnVtO1xuXG4gICAgLy8gZGVmYXVsdCB2YWx1ZVxuICAgIHByb3RlY3RlZCBfaGFzRGVmYXVsdFZhbHVlID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIF9kZWZhdWx0TWF0Y2hNb2RlPzogRmlsdGVyTWF0Y2hNb2RlRXh0ZW5kZWRUeXBlO1xuICAgIHByb3RlY3RlZCBfZGVmYXVsdFZhbHVlPzogRmlsdGVyTW9kZWwgfCBGaWx0ZXJNb2RlbFtdO1xuICAgIHByb3RlY3RlZCBfbWF0Y2hNb2Rlczogc3RyaW5nW10gfCBudWxsID0gbnVsbDtcblxuICAgIC8vIHZhbHVlIGRpc3BsYXlcbiAgICBwcml2YXRlIF9kaXNwbGF5Rm9ybWF0Pzogc3RyaW5nO1xuICAgIHByaXZhdGUgX2Rpc3BsYXlGb3JtYXRBcHBseVRvRmllbGQ/OiBib29sZWFuO1xuICAgIHByaXZhdGUgX2xvY2FsZT86IHN0cmluZztcblxuICAgIC8vIG51bWJlciBmaWx0ZXIgZmllbGQgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByb3RlY3RlZCBfbnVtYmVyTWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgcHJvdGVjdGVkIF9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cz86IG51bWJlcjtcbiAgICBwcm90ZWN0ZWQgX251bWJlclVzZUdyb3VwaW5nID0gdHJ1ZTtcblxuICAgIC8vIGRhdGUgZmlsdGVyIGZpZWxkIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcm90ZWN0ZWQgX2RhdGVQaWNrZXJGb3JtYXQ/OiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIF9kYXRlUGlja2VyU2hvd1RpbWU/OiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBfZGF0ZVBpY2tlclNob3dTZWNvbmRzPzogYm9vbGVhbjtcbiAgICBwcm90ZWN0ZWQgX2RhdGVWYWx1ZU5vVGltZT86IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9kYXRlVmFsdWVOb1RpbWV6b25lPzogYm9vbGVhbjtcbiAgICBwcm90ZWN0ZWQgX2RhdGVWYWx1ZVV0Yz86IGJvb2xlYW47XG5cbiAgICBwcm90ZWN0ZWQgX3BsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfY2xhc3NOYW1lID0gJyc7XG4gICAgcHJvdGVjdGVkIF9jb2x1bW5DbGFzc05hbWUgPSAnJztcbiAgICBwcm90ZWN0ZWQgX2NvbHVtbldpZHRoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcm90ZWN0ZWQgX2NvbHVtbk1pbldpZHRoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcm90ZWN0ZWQgX2lucHV0VHJpbT86IElucHV0VHJpbVR5cGU7XG4gICAgcHJvdGVjdGVkIF90aXRsZT86IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgICAgICAgdGhpcy5fc2hvd09uQ29sdW1uID0gcHJvcGVydHk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWx0ZXJUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsdGVyVHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNob3dPbkNvbHVtbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Nob3dPbkNvbHVtbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpc3BsYXlUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheVR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNEZWZhdWx0VmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNEZWZhdWx0VmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkZWZhdWx0VmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kZWZhdWx0VmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkZWZhdWx0TWF0Y2hNb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGVmYXVsdE1hdGNoTW9kZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG1hdGNoTW9kZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXRjaE1vZGVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGlzcGxheUZvcm1hdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXlGb3JtYXQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheUZvcm1hdEFwcGx5VG9GaWVsZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxvY2FsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlck1pbkZyYWN0aW9uRGlnaXRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyTWluRnJhY3Rpb25EaWdpdHM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNYXhGcmFjdGlvbkRpZ2l0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck1heEZyYWN0aW9uRGlnaXRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyVXNlR3JvdXBpbmcoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJVc2VHcm91cGluZztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJGb3JtYXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyRm9ybWF0O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclNob3dUaW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclNob3dTZWNvbmRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlclNob3dTZWNvbmRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVZhbHVlVXRjKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVZhbHVlVXRjO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVZhbHVlTm9UaW1lem9uZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVWYWx1ZU5vVGltZXpvbmU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlVmFsdWVOb1RpbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlVmFsdWVOb1RpbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwbGFjZWhvbGRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY2xhc3NOYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2xhc3NOYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29sdW1uQ2xhc3NOYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29sdW1uQ2xhc3NOYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29sdW1uV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2x1bW5XaWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbk1pbldpZHRoKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29sdW1uTWluV2lkdGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0cmltT3B0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5wdXRUcmltO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm9wZXJ0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGU7XG4gICAgfVxuXG4gICAgcHVibGljIGFzRmlsdGVyVHlwZShmaWx0ZXJUeXBlOiBGaWx0ZXJUeXBlRW51bSkge1xuICAgICAgICB0aGlzLl9maWx0ZXJUeXBlID0gZmlsdGVyVHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIGFzRGF0ZShvcHRzPzogRmlsdGVyRGF0ZU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlRW51bS5EYXRlO1xuICAgICAgICB0aGlzLndpdGhEaXNwbGF5Rm9ybWF0KG9wdHM/LmRpc3BsYXlGb3JtYXQpLndpdGhEYXRlUGlja2VyRGlzcGxheShvcHRzKS53aXRoRGF0ZVZhbHVlKG9wdHMpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNOdW1iZXIob3B0cz86IEZpbHRlck51bWJlck9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlRW51bS5OdW1iZXI7XG4gICAgICAgIHRoaXMud2l0aERpc3BsYXlGb3JtYXQob3B0cz8uZGlzcGxheUZvcm1hdCkud2l0aE51bWJlckZyYWN0aW9ucyhvcHRzPy5taW5GcmFjdGlvbkRpZ2l0cywgb3B0cz8ubWF4RnJhY3Rpb25EaWdpdHMpLndpdGhMb2NhbGUob3B0cz8ubG9jYWxlKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhTaG93T25Db2x1bW4ocHJvcGVydHk6IGtleW9mIFRhYmxlTW9kZWwsIGRpc3BsYXlUeXBlOiBGaWx0ZXJEaXNwbGF5VHlwZUVudW0gfCB1bmRlZmluZWQgPSBGaWx0ZXJEaXNwbGF5VHlwZUVudW0uQ29sdW1uKTogdGhpcyB7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhTaG93T25Db2x1bW5VbnNhZmUocHJvcGVydHkgYXMgc3RyaW5nLCBkaXNwbGF5VHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEaXNwbGF5VHlwZSh0eXBlPzogRmlsdGVyRGlzcGxheVR5cGVFbnVtKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXlUeXBlID0gdHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhTaG93T25Db2x1bW5VbnNhZmUocHJvcGVydHk6IHN0cmluZywgZGlzcGxheVR5cGU6IEZpbHRlckRpc3BsYXlUeXBlRW51bSB8IHVuZGVmaW5lZCA9IEZpbHRlckRpc3BsYXlUeXBlRW51bS5Db2x1bW4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fc2hvd09uQ29sdW1uID0gcHJvcGVydHk7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXlUeXBlID0gZGlzcGxheVR5cGU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoRGVmYXVsdEZpbHRlcih2YWx1ZTogRmlsdGVyTW9kZWwgfCBGaWx0ZXJNb2RlbFtdIHwgdW5kZWZpbmVkLCBtYXRjaE1vZGU6IEZpbHRlck1hdGNoTW9kZUV4dGVuZGVkVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9oYXNEZWZhdWx0VmFsdWUgPSB0cnVlO1xuICAgICAgICB0aGlzLl9kZWZhdWx0VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5fZGVmYXVsdE1hdGNoTW9kZSA9IG1hdGNoTW9kZTtcbiAgICAgICAgdGhpcy52YWxpZGF0ZURlZmF1bHRGaWx0ZXIodmFsdWUsIG1hdGNoTW9kZSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB2YWxpZGF0ZURlZmF1bHRGaWx0ZXIodmFsdWU6IEZpbHRlck1vZGVsIHwgRmlsdGVyTW9kZWxbXSB8IHVuZGVmaW5lZCwgbWF0Y2hNb2RlOiBGaWx0ZXJNYXRjaE1vZGVFeHRlbmRlZFR5cGUpIHtcbiAgICAgICAgaWYgKG1hdGNoTW9kZSA9PT0gJ2JldHdlZW4nICYmIHZhbHVlICE9IG51bGwgJiYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB2YWx1ZS5maWx0ZXIodiA9PiB2ICE9IG51bGwpLmxlbmd0aCAhPT0gMikpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgRGVmYXVsdCB2YWx1ZSBmb3IgZmlsdGVyIG1hdGNoIG1vZGUgJHttYXRjaE1vZGV9IG11c3QgcHJvdmlkZSBleGFjdGx5IDIgdmFsdWVzIGluIGFycmF5YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKChtYXRjaE1vZGUgPT09ICdpbicgfHwgbWF0Y2hNb2RlID09PSAnbm90SW4nKSAmJiB2YWx1ZSAhPSBudWxsICYmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgdmFsdWUuZmlsdGVyKHYgPT4gdiAhPSBudWxsKS5sZW5ndGggPT09IDApKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYERlZmF1bHQgdmFsdWUgZm9yIGZpbHRlciBtYXRjaCBtb2RlICR7bWF0Y2hNb2RlfSBtdXN0IGJlIGFycmF5IGFuZCBwcm92aWRlIGF0IGxlYXN0IDEgbm9uLW51bGwgdmFsdWVgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWF0Y2hNb2RlID09PSAnZXhpc3RzJyB8fCBtYXRjaE1vZGUgPT09ICdkb2VzTm90RXhpc3QnKSB7XG4gICAgICAgICAgICB0aGlzLl9kZWZhdWx0VmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWF0Y2hNb2RlICYmIHRoaXMuX21hdGNoTW9kZXMgJiYgdGhpcy5fbWF0Y2hNb2Rlcy5pbmRleE9mKG1hdGNoTW9kZSkgPCAwKSB7XG4gICAgICAgICAgICB0aGlzLl9kZWZhdWx0TWF0Y2hNb2RlID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgTG9nZ2VyU2VydmljZS5nZXQoKS5kZWJ1ZyhgV0FSTklORzogRGVmYXVsdCBmaWx0ZXIgbWF0Y2ggbW9kZSAnJHttYXRjaE1vZGV9JyBjb3VsZCBub3QgYmUgYXNzaWduZWQgZm9yIHByb3BlcnR5ICR7dGhpcy5fcHJvcGVydHl9LmApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEaXNwbGF5Rm9ybWF0KGZvcm1hdD86IHN0cmluZywgYXBwbHlUb0ZpZWxkPzogYm9vbGVhbik6IHRoaXMge1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0ID0gZm9ybWF0O1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkID0gYXBwbHlUb0ZpZWxkO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aExvY2FsZShsb2NhbGU/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbG9jYWxlID0gbG9jYWxlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE51bWJlckZyYWN0aW9ucyhtaW4/OiBudW1iZXIsIG1heD86IG51bWJlcikge1xuICAgICAgICB0aGlzLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cyA9IG1pbjtcbiAgICAgICAgdGhpcy5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSBtYXg7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoTnVtYmVyR3JvdXBpbmcodXNlR3JvdXBpbmcgPSB0cnVlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX251bWJlclVzZUdyb3VwaW5nID0gdXNlR3JvdXBpbmc7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIFVzZSAke3dpdGhEYXRlUGlja2VyRGlzcGxheX0gaW5zdGVhZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgd2l0aERhdGVGb3JtYXQoZm9ybWF0Pzogc3RyaW5nLCBzaG93VGltZSA9IGZhbHNlLCBzaG93U2Vjb25kcyA9IGZhbHNlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQgPSBmb3JtYXQ7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZSA9IHNob3dUaW1lO1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyU2hvd1NlY29uZHMgPSBzaG93U2Vjb25kcztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEYXRlUGlja2VyRGlzcGxheShvcHRzPzogRmlsdGVyRGF0ZVBpY2tlckRpc3BsYXlPcHRzVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkID0gb3B0cz8uYXBwbHlGcm9tRGlzcGxheUZvcm1hdDtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlckZvcm1hdCA9IG9wdHM/LmZvcm1hdDtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lID0gb3B0cz8uc2hvd1RpbWU7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcyA9IG9wdHM/LnNob3dTZWNvbmRzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aERhdGVWYWx1ZShvcHRzPzogRmlsdGVyRGF0ZVZhbHVlT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGF0ZVZhbHVlVXRjID0gb3B0cz8udXRjO1xuICAgICAgICB0aGlzLl9kYXRlVmFsdWVOb1RpbWV6b25lID0gb3B0cz8ubm9UaW1lWm9uZTtcbiAgICAgICAgdGhpcy5fZGF0ZVZhbHVlTm9UaW1lID0gb3B0cz8ubm9UaW1lO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fcGxhY2Vob2xkZXIgPSBwbGFjZWhvbGRlcjtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhDbGFzc05hbWUoY2xhc3NOYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fY2xhc3NOYW1lID0gY2xhc3NOYW1lO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aENvbHVtbkNsYXNzTmFtZShjbGFzc05hbWU6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9jb2x1bW5DbGFzc05hbWUgPSBjbGFzc05hbWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoQ29sdW1uV2lkdGgod2lkdGg/OiBudW1iZXIsIG1pbldpZHRoPzogbnVtYmVyKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2NvbHVtbldpZHRoID0gd2lkdGggPz8gbnVsbDtcbiAgICAgICAgdGhpcy5fY29sdW1uTWluV2lkdGggPSBtaW5XaWR0aCA/PyBudWxsO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aElucHV0VHJpbW1pbmcodHJpbU9wdGlvbjogSW5wdXRUcmltVHlwZSA9ICdib3RoJyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9pbnB1dFRyaW0gPSB0cmltT3B0aW9uO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE1hdGNoTW9kZXMobWF0Y2hNb2RlczogQXJyYXk8RmlsdGVyTWF0Y2hNb2RlRXh0ZW5kZWRUeXBlPik6IHRoaXMge1xuICAgICAgICB0aGlzLl9tYXRjaE1vZGVzID0gbWF0Y2hNb2RlcztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhUaXRsZShrZXk6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl90aXRsZSA9IGtleTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIGNvcHkoKTogRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4ge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gbmV3IEZpbHRlckRlc2NyaXB0b3I8RmlsdGVyTW9kZWwsIFRhYmxlTW9kZWw+KHRoaXMuX3Byb3BlcnR5KTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZGVzY3JpcHRvcik7XG4gICAgICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb3B5RmllbGRzVG8oZGVzY3JpcHRvcjogRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4pIHtcbiAgICAgICAgZGVzY3JpcHRvci5fZmlsdGVyVHlwZSA9IHRoaXMuX2ZpbHRlclR5cGU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2hhc0RlZmF1bHRWYWx1ZSA9IHRoaXMuX2hhc0RlZmF1bHRWYWx1ZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGVmYXVsdFZhbHVlID0gdGhpcy5fZGVmYXVsdFZhbHVlO1xuICAgICAgICBkZXNjcmlwdG9yLl9kZWZhdWx0TWF0Y2hNb2RlID0gdGhpcy5fZGVmYXVsdE1hdGNoTW9kZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGlzcGxheUZvcm1hdCA9IHRoaXMuX2Rpc3BsYXlGb3JtYXQ7XG4gICAgICAgIGRlc2NyaXB0b3IuX2xvY2FsZSA9IHRoaXMuX2xvY2FsZTtcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyTWluRnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyVXNlR3JvdXBpbmcgPSB0aGlzLl9udW1iZXJVc2VHcm91cGluZztcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVBpY2tlckZvcm1hdCA9IHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQ7XG4gICAgICAgIGRlc2NyaXB0b3IuX2RhdGVQaWNrZXJTaG93VGltZSA9IHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVZhbHVlVXRjID0gdGhpcy5fZGF0ZVZhbHVlVXRjO1xuICAgICAgICBkZXNjcmlwdG9yLl9kYXRlVmFsdWVOb1RpbWV6b25lID0gdGhpcy5fZGF0ZVZhbHVlTm9UaW1lem9uZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVZhbHVlTm9UaW1lID0gdGhpcy5fZGF0ZVZhbHVlTm9UaW1lO1xuICAgICAgICBkZXNjcmlwdG9yLl9wbGFjZWhvbGRlciA9IHRoaXMuX3BsYWNlaG9sZGVyO1xuICAgICAgICBkZXNjcmlwdG9yLl9jbGFzc05hbWUgPSB0aGlzLl9jbGFzc05hbWU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbldpZHRoID0gdGhpcy5fY29sdW1uV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbk1pbldpZHRoID0gdGhpcy5fY29sdW1uTWluV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbkNsYXNzTmFtZSA9IHRoaXMuX2NvbHVtbkNsYXNzTmFtZTtcbiAgICB9XG59XG4iXX0=
|
|
352
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmRlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9maWx0ZXIvc3JjL2Rlc2NyaXB0b3JzL2ZpbHRlci5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxvQkFBb0IsRUFBa0QsYUFBYSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFHaEksT0FBTyxFQUFDLHFCQUFxQixFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBa0M3RSxNQUFNLE9BQU8sZ0JBQWdCO0lBdUN6QixZQUFZLFFBQWdCO1FBbkNsQixnQkFBVyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFHOUMsZ0JBQWdCO1FBQ04scUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBYXpCLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQVcxQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixpQkFBWSxHQUFrQixJQUFJLENBQUM7UUFDbkMsb0JBQWUsR0FBa0IsSUFBSSxDQUFDO1FBSzVDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNuQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcs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Q0FBQztRQUNwRCxVQUFVLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDNUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ3hDLFVBQVUsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUM1QyxVQUFVLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDbEQsVUFBVSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUN4RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yLCBGaWx0ZXJNYXRjaE1vZGVFeHRlbmRlZFR5cGUsIElGaWx0ZXJEZXNjcmlwdG9yLCBMb2dnZXJTZXJ2aWNlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtJbnB1dFRyaW1UeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2Zvcm0vYXBpJztcblxuaW1wb3J0IHtGaWx0ZXJEaXNwbGF5VHlwZUVudW0sIEZpbHRlclR5cGVFbnVtfSBmcm9tICcuLi9tb2RlbHMvZmlsdGVyLm1vZGVsJztcblxuZXhwb3J0IHR5cGUgRmlsdGVyRGF0ZVBpY2tlckRpc3BsYXlPcHRzVHlwZSA9IHtcbiAgICBhcHBseUZyb21EaXNwbGF5Rm9ybWF0PzogYm9vbGVhbjtcbiAgICBmb3JtYXQ/OiBzdHJpbmc7XG4gICAgc2hvd1RpbWU/OiBib29sZWFuO1xuICAgIHNob3dTZWNvbmRzPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEZpbHRlckRhdGVWYWx1ZU9wdHNUeXBlID0ge1xuICAgIHV0Yz86IGJvb2xlYW47XG4gICAgbm9UaW1lPzogYm9vbGVhbjtcbiAgICBub1RpbWVab25lPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEZpbHRlckRhdGVPcHRzVHlwZSA9IEZpbHRlckRhdGVWYWx1ZU9wdHNUeXBlICZcbiAgICBGaWx0ZXJEYXRlUGlja2VyRGlzcGxheU9wdHNUeXBlICYge1xuICAgICAgICBkaXNwbGF5Rm9ybWF0Pzogc3RyaW5nO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEZpbHRlck51bWJlckZyYWN0aW9uT3B0c1R5cGUgPSB7XG4gICAgbWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgbWF4RnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJMb2NhbGVPcHRzVHlwZSA9IHtcbiAgICBsb2NhbGU/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJOdW1iZXJPcHRzVHlwZSA9IEZpbHRlck51bWJlckZyYWN0aW9uT3B0c1R5cGUgJlxuICAgIEZpbHRlckxvY2FsZU9wdHNUeXBlICYge1xuICAgICAgICBkaXNwbGF5Rm9ybWF0Pzogc3RyaW5nO1xuICAgIH07XG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJEZXNjcmlwdG9yPEZpbHRlck1vZGVsLCBUYWJsZU1vZGVsPiBpbXBsZW1lbnRzIElGaWx0ZXJEZXNjcmlwdG9yPEZpbHRlck1vZGVsLCBUYWJsZU1vZGVsPiB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9wcm9wZXJ0eTogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfc2hvd09uQ29sdW1uPzogc3RyaW5nO1xuXG4gICAgcHJvdGVjdGVkIF9maWx0ZXJUeXBlID0gRmlsdGVyVHlwZUVudW0uU3RyaW5nO1xuICAgIHByb3RlY3RlZCBfZGlzcGxheVR5cGU/OiBGaWx0ZXJEaXNwbGF5VHlwZUVudW07XG5cbiAgICAvLyBkZWZhdWx0IHZhbHVlXG4gICAgcHJvdGVjdGVkIF9oYXNEZWZhdWx0VmFsdWUgPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgX2RlZmF1bHRNYXRjaE1vZGU/OiBGaWx0ZXJNYXRjaE1vZGVFeHRlbmRlZFR5cGU7XG4gICAgcHJvdGVjdGVkIF9kZWZhdWx0VmFsdWU/OiBGaWx0ZXJNb2RlbCB8IEZpbHRlck1vZGVsW107XG4gICAgcHJvdGVjdGVkIF9tYXRjaE1vZGVzPzogc3RyaW5nW107XG5cbiAgICAvLyB2YWx1ZSBkaXNwbGF5XG4gICAgcHJpdmF0ZSBfZGlzcGxheUZvcm1hdD86IHN0cmluZztcbiAgICBwcml2YXRlIF9kaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkPzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9sb2NhbGU/OiBzdHJpbmc7XG5cbiAgICAvLyBudW1iZXIgZmlsdGVyIGZpZWxkIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcm90ZWN0ZWQgX251bWJlck1pbkZyYWN0aW9uRGlnaXRzPzogbnVtYmVyO1xuICAgIHByb3RlY3RlZCBfbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgcHJvdGVjdGVkIF9udW1iZXJVc2VHcm91cGluZyA9IHRydWU7XG5cbiAgICAvLyBkYXRlIGZpbHRlciBmaWVsZCBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJvdGVjdGVkIF9kYXRlUGlja2VyRm9ybWF0Pzogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfZGF0ZVBpY2tlclNob3dUaW1lPzogYm9vbGVhbjtcbiAgICBwcm90ZWN0ZWQgX2RhdGVQaWNrZXJTaG93U2Vjb25kcz86IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9kYXRlVmFsdWVOb1RpbWU/OiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBfZGF0ZVZhbHVlTm9UaW1lem9uZT86IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9kYXRlVmFsdWVVdGM/OiBib29sZWFuO1xuXG4gICAgcHJvdGVjdGVkIF9wbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX2NsYXNzTmFtZSA9ICcnO1xuICAgIHByb3RlY3RlZCBfY29sdW1uQ2xhc3NOYW1lID0gJyc7XG4gICAgcHJvdGVjdGVkIF9jb2x1bW5XaWR0aDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gICAgcHJvdGVjdGVkIF9jb2x1bW5NaW5XaWR0aDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gICAgcHJvdGVjdGVkIF9pbnB1dFRyaW0/OiBJbnB1dFRyaW1UeXBlO1xuICAgIHByb3RlY3RlZCBfdGl0bGU/OiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3Byb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICAgIHRoaXMuX3Nob3dPbkNvbHVtbiA9IHByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZmlsdGVyVHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlclR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzaG93T25Db2x1bW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93T25Db2x1bW47XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkaXNwbGF5VHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXlUeXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzRGVmYXVsdFZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzRGVmYXVsdFZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGVmYXVsdFZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGVmYXVsdFZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGVmYXVsdE1hdGNoTW9kZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRNYXRjaE1vZGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtYXRjaE1vZGVzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF0Y2hNb2RlcztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpc3BsYXlGb3JtYXQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5Rm9ybWF0O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGlzcGxheUZvcm1hdEFwcGx5VG9GaWVsZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXlGb3JtYXRBcHBseVRvRmllbGQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBsb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2NhbGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNaW5GcmFjdGlvbkRpZ2l0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlclVzZUdyb3VwaW5nKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyRm9ybWF0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlckZvcm1hdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJTaG93VGltZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJTaG93U2Vjb25kcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVWYWx1ZVV0YygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVWYWx1ZVV0YztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVWYWx1ZU5vVGltZXpvbmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlVmFsdWVOb1RpbWV6b25lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVZhbHVlTm9UaW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVZhbHVlTm9UaW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcGxhY2Vob2xkZXIoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNsYXNzTmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NsYXNzTmFtZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbkNsYXNzTmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbHVtbkNsYXNzTmFtZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbldpZHRoKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29sdW1uV2lkdGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb2x1bW5NaW5XaWR0aCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbHVtbk1pbldpZHRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdHJpbU9wdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lucHV0VHJpbTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHByb3BlcnR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvcGVydHk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0aXRsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpdGxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnZlcnRzIGZpbHRlciB0byBnaXZlbiB0eXBlLlxuICAgICAqXG4gICAgICogQHBhcmFtIGZpbHRlclR5cGUgRmlsdGVyIHR5cGUuXG4gICAgICovXG4gICAgcHVibGljIGFzRmlsdGVyVHlwZShmaWx0ZXJUeXBlOiBGaWx0ZXJUeXBlRW51bSkge1xuICAgICAgICB0aGlzLl9maWx0ZXJUeXBlID0gZmlsdGVyVHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGZpbHRlciBhcyBkYXRlIHR5cGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0cyBBZGRpdGlvbmFsIG9wdGlvbnMuXG4gICAgICovXG4gICAgcHVibGljIGFzRGF0ZShvcHRzPzogRmlsdGVyRGF0ZU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlRW51bS5EYXRlO1xuICAgICAgICB0aGlzLndpdGhEaXNwbGF5Rm9ybWF0KG9wdHM/LmRpc3BsYXlGb3JtYXQpLndpdGhEYXRlUGlja2VyRGlzcGxheShvcHRzKS53aXRoRGF0ZVZhbHVlKG9wdHMpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgZmlsdGVyIGFzIG51bWJlciB0eXBlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdHMgQWRkaXRpb25hbCBvcHRpb25zLlxuICAgICAqL1xuICAgIHB1YmxpYyBhc051bWJlcihvcHRzPzogRmlsdGVyTnVtYmVyT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmlsdGVyVHlwZSA9IEZpbHRlclR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgdGhpcy53aXRoRGlzcGxheUZvcm1hdChvcHRzPy5kaXNwbGF5Rm9ybWF0KS53aXRoTnVtYmVyRnJhY3Rpb25zKG9wdHM/Lm1pbkZyYWN0aW9uRGlnaXRzLCBvcHRzPy5tYXhGcmFjdGlvbkRpZ2l0cykud2l0aExvY2FsZShvcHRzPy5sb2NhbGUpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93cyBmaWx0ZXIgb24gY29sdW1uIGZvciBnaXZlbiBwcm9wZXJ0eS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBwcm9wZXJ0eSBDb2x1bW4gcHJvcGVydHkgdG8gc2hvdyBmaWx0ZXIgb24uXG4gICAgICogQHBhcmFtIGRpc3BsYXlUeXBlIE9wdGlvbmFsIGRpc3BsYXkgdHlwZSBvdmVycmlkZS4gSWYgbm90IGNvbHVtbiwgdGhlIGZpbHRlciB3aWxsIG5vdCBiZSBzaG93biBvbiBjb2x1bW4uXG4gICAgICovXG4gICAgcHVibGljIHdpdGhTaG93T25Db2x1bW4ocHJvcGVydHk6IGtleW9mIFRhYmxlTW9kZWwsIGRpc3BsYXlUeXBlOiBGaWx0ZXJEaXNwbGF5VHlwZUVudW0gfCB1bmRlZmluZWQgPSBGaWx0ZXJEaXNwbGF5VHlwZUVudW0uQ29sdW1uKTogdGhpcyB7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhTaG93T25Db2x1bW5VbnNhZmUocHJvcGVydHkgYXMgc3RyaW5nLCBkaXNwbGF5VHlwZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvd3MgZmlsdGVyIG9uIGNvbHVtbiBmb3IgZ2l2ZW4gcHJvcGVydHkuXG4gICAgICpcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIFVOU0FGRS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBwcm9wZXJ0eSBDb2x1bW4gcHJvcGVydHkgdG8gc2hvdyBmaWx0ZXIgb24uXG4gICAgICogQHBhcmFtIGRpc3BsYXlUeXBlIE9wdGlvbmFsIGRpc3BsYXkgdHlwZSBvdmVycmlkZS4gSWYgbm90IGNvbHVtbiwgdGhlIGZpbHRlciB3aWxsIG5vdCBiZSBzaG93biBvbiBjb2x1bW4uXG4gICAgICovXG4gICAgcHVibGljIHdpdGhTaG93T25Db2x1bW5VbnNhZmUocHJvcGVydHk6IHN0cmluZywgZGlzcGxheVR5cGU6IEZpbHRlckRpc3BsYXlUeXBlRW51bSB8IHVuZGVmaW5lZCA9IEZpbHRlckRpc3BsYXlUeXBlRW51bS5Db2x1bW4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fc2hvd09uQ29sdW1uID0gcHJvcGVydHk7XG4gICAgICAgIHRoaXMuX2Rpc3BsYXlUeXBlID0gZGlzcGxheVR5cGU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZXMgZGlzcGxheSB0eXBlIG9mIGZpbHRlci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0eXBlIERpc3BsYXkgdHlwZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgd2l0aERpc3BsYXlUeXBlKHR5cGU/OiBGaWx0ZXJEaXNwbGF5VHlwZUVudW0pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGlzcGxheVR5cGUgPSB0eXBlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGRlZmF1bHQgZmlsdGVyIHZhbHVlIGZvciBmaWx0ZXIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmFsdWUgVmFsdWUgZm9yIGRlZmF1bHQgZmlsdGVyLlxuICAgICAqIEBwYXJhbSBtYXRjaE1vZGUgTWF0Y2ggbW9kZSBmb3IgZGVmYXVsdCBmaWx0ZXIuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhEZWZhdWx0RmlsdGVyKHZhbHVlOiBGaWx0ZXJNb2RlbCB8IEZpbHRlck1vZGVsW10gfCB1bmRlZmluZWQsIG1hdGNoTW9kZTogRmlsdGVyTWF0Y2hNb2RlRXh0ZW5kZWRUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2hhc0RlZmF1bHRWYWx1ZSA9IHRydWU7XG4gICAgICAgIHRoaXMuX2RlZmF1bHRWYWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9kZWZhdWx0TWF0Y2hNb2RlID0gbWF0Y2hNb2RlO1xuICAgICAgICB0aGlzLnZhbGlkYXRlRGVmYXVsdEZpbHRlcih2YWx1ZSwgbWF0Y2hNb2RlKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRlRGVmYXVsdEZpbHRlcih2YWx1ZTogRmlsdGVyTW9kZWwgfCBGaWx0ZXJNb2RlbFtdIHwgdW5kZWZpbmVkLCBtYXRjaE1vZGU6IEZpbHRlck1hdGNoTW9kZUV4dGVuZGVkVHlwZSkge1xuICAgICAgICBpZiAobWF0Y2hNb2RlID09PSAnYmV0d2VlbicgJiYgdmFsdWUgIT0gbnVsbCAmJiAoIUFycmF5LmlzQXJyYXkodmFsdWUpIHx8IHZhbHVlLmZpbHRlcih2ID0+IHYgIT0gbnVsbCkubGVuZ3RoICE9PSAyKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGBEZWZhdWx0IHZhbHVlIGZvciBmaWx0ZXIgbWF0Y2ggbW9kZSAke21hdGNoTW9kZX0gbXVzdCBwcm92aWRlIGV4YWN0bHkgMiB2YWx1ZXMgaW4gYXJyYXlgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoKG1hdGNoTW9kZSA9PT0gJ2luJyB8fCBtYXRjaE1vZGUgPT09ICdub3RJbicpICYmIHZhbHVlICE9IG51bGwgJiYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB2YWx1ZS5maWx0ZXIodiA9PiB2ICE9IG51bGwpLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgRGVmYXVsdCB2YWx1ZSBmb3IgZmlsdGVyIG1hdGNoIG1vZGUgJHttYXRjaE1vZGV9IG11c3QgYmUgYXJyYXkgYW5kIHByb3ZpZGUgYXQgbGVhc3QgMSBub24tbnVsbCB2YWx1ZWApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtYXRjaE1vZGUgPT09ICdleGlzdHMnIHx8IG1hdGNoTW9kZSA9PT0gJ2RvZXNOb3RFeGlzdCcpIHtcbiAgICAgICAgICAgIHRoaXMuX2RlZmF1bHRWYWx1ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtYXRjaE1vZGUgJiYgdGhpcy5fbWF0Y2hNb2RlcyAmJiB0aGlzLl9tYXRjaE1vZGVzLmluZGV4T2YobWF0Y2hNb2RlKSA8IDApIHtcbiAgICAgICAgICAgIHRoaXMuX2RlZmF1bHRNYXRjaE1vZGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBMb2dnZXJTZXJ2aWNlLmdldCgpLmRlYnVnKGBXQVJOSU5HOiBEZWZhdWx0IGZpbHRlciBtYXRjaCBtb2RlICcke21hdGNoTW9kZX0nIGNvdWxkIG5vdCBiZSBhc3NpZ25lZCBmb3IgcHJvcGVydHkgJHt0aGlzLl9wcm9wZXJ0eX0uYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGZvcm1hdCBmb3IgZGlzcGxheSBvZiBmaWx0ZXIgdmFsdWUgKGFwcGxpZXMgdG8gZGF0ZSBhbmQgbnVtYmVyKS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JtYXQgRm9ybWF0IChBbmd1bGFyIGZvcm1hdHRpbmcgcnVsZXMgYXBwbHkpLlxuICAgICAqIEBwYXJhbSBhcHBseVRvRmllbGQgSWYgdGhlIGZvcm1hdCBzaG91bGQgYWxzbyBiZSBhcHBsaWVkIHRvIGZpZWxkIG9uIGZpbHRlciBlZGl0aW5nIGZvcm0uXG4gICAgICovXG4gICAgcHVibGljIHdpdGhEaXNwbGF5Rm9ybWF0KGZvcm1hdD86IHN0cmluZywgYXBwbHlUb0ZpZWxkPzogYm9vbGVhbik6IHRoaXMge1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0ID0gZm9ybWF0O1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkID0gYXBwbHlUb0ZpZWxkO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGxvY2FsZSBmb3IgZmlsdGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIGxvY2FsZSBMb2NhbGUuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhMb2NhbGUobG9jYWxlPzogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2xvY2FsZSA9IGxvY2FsZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBmcmFjdGlvbiBmb3IgbnVtYmVyIGZpbHRlciBlZGl0aW5nIGZpZWxkLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1pbiBNaW4gZnJhY3Rpb24gZGlnaXRzIChpLmUuIGRpZ2l0cyBhZnRlciBkZWNpbWFsKS5cbiAgICAgKiBAcGFyYW0gbWF4IE1heCBmcmFjdGlvbiBkaWdpdHMgKGkuZS4gZGlnaXRzIGFmdGVyIGRlY2ltYWwpLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoTnVtYmVyRnJhY3Rpb25zKG1pbj86IG51bWJlciwgbWF4PzogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzID0gbWluO1xuICAgICAgICB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cyA9IG1heDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSWYgbnVtYmVyIGdyb3VwaW5nIHNob3VsZCBiZSB1c2VkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZUdyb3VwaW5nIEVuYWJsZXMvZGlzYmFsZWQgdGhlIGZlYXR1cmUuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhOdW1iZXJHcm91cGluZyh1c2VHcm91cGluZyA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmcgPSB1c2VHcm91cGluZztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlICR7d2l0aERhdGVQaWNrZXJEaXNwbGF5fSBpbnN0ZWFkLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoRGF0ZUZvcm1hdChmb3JtYXQ/OiBzdHJpbmcsIHNob3dUaW1lID0gZmFsc2UsIHNob3dTZWNvbmRzID0gZmFsc2UpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlckZvcm1hdCA9IGZvcm1hdDtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lID0gc2hvd1RpbWU7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcyA9IHNob3dTZWNvbmRzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGRhdGUgcGlja2VyIGRpc3BsYXkgb3B0aW9ucy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRzIE9wdGlvbnMuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhEYXRlUGlja2VyRGlzcGxheShvcHRzPzogRmlsdGVyRGF0ZVBpY2tlckRpc3BsYXlPcHRzVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9kaXNwbGF5Rm9ybWF0QXBwbHlUb0ZpZWxkID0gb3B0cz8uYXBwbHlGcm9tRGlzcGxheUZvcm1hdDtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlckZvcm1hdCA9IG9wdHM/LmZvcm1hdDtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lID0gb3B0cz8uc2hvd1RpbWU7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcyA9IG9wdHM/LnNob3dTZWNvbmRzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGZpbHRlciBkYXRlIHZhbHVlIGZvcm1hdHRpbmcgb3B0aW9ucy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRzIE9wdGlvbnMuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhEYXRlVmFsdWUob3B0cz86IEZpbHRlckRhdGVWYWx1ZU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2RhdGVWYWx1ZVV0YyA9IG9wdHM/LnV0YztcbiAgICAgICAgdGhpcy5fZGF0ZVZhbHVlTm9UaW1lem9uZSA9IG9wdHM/Lm5vVGltZVpvbmU7XG4gICAgICAgIHRoaXMuX2RhdGVWYWx1ZU5vVGltZSA9IG9wdHM/Lm5vVGltZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBwbGFjZWhvbGRlciBmb3IgZmlsdGVyIGZpZWxkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHBsYWNlaG9sZGVyIFRleHQgZm9yIHBsYWNlaG9sZGVyLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoUGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHBsYWNlaG9sZGVyO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGNsYXNzIG5hbWUgZm9yIGZpbHRlci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjbGFzc05hbWUgQ2xhc3MgbmFtZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgd2l0aENsYXNzTmFtZShjbGFzc05hbWU6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9jbGFzc05hbWUgPSBjbGFzc05hbWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgY2xhc3MgbmFtZSBmb3IgY29sdW1uIGRpc3BsYXkgdHlwZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjbGFzc05hbWUgQ2xhc3MgbmFtZSBmb3IgY29sdW1uLlxuICAgICAqL1xuICAgIHB1YmxpYyB3aXRoQ29sdW1uQ2xhc3NOYW1lKGNsYXNzTmFtZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2NvbHVtbkNsYXNzTmFtZSA9IGNsYXNzTmFtZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGNvbHVtbiB3aWR0aCBmb3IgY29sdW1uIGRpc3BsYXkgdHlwZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB3aWR0aCBSZWxhdGl2ZSB3aWR0aCAoaW4gcGVyY2VudGFnZSkgb2YgdGFibGUgd2lkdGg6XG4gICAgICogQHBhcmFtIG1pbldpZHRoXG4gICAgICovXG4gICAgcHVibGljIHdpdGhDb2x1bW5XaWR0aCh3aWR0aD86IG51bWJlciwgbWluV2lkdGg/OiBudW1iZXIpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fY29sdW1uV2lkdGggPSB3aWR0aCA/PyBudWxsO1xuICAgICAgICB0aGlzLl9jb2x1bW5NaW5XaWR0aCA9IG1pbldpZHRoID8/IG51bGw7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgaW5wdXQgdHJpbW1pbmcgZm9yIGZpbHRlciB2YWx1ZSBmaWVsZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0cmltT3B0aW9uIFRyaW0gc2V0dGluZy5cbiAgICAgKi9cbiAgICBwdWJsaWMgd2l0aElucHV0VHJpbW1pbmcodHJpbU9wdGlvbjogSW5wdXRUcmltVHlwZSA9ICdib3RoJyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9pbnB1dFRyaW0gPSB0cmltT3B0aW9uO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHJhbmdlIG9mIG1hdGNoIG1vZGVzIGZvciB0aGlzIGZpbHRlci4gSWYgbm9uIHByb3ZpZGVkLCB0aGUgZGVmYXVsdHMgYXJlIGFwcGxpZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbWF0Y2hNb2RlcyBNYXRjaCBtb2RlIG9wdGlvbnMuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhNYXRjaE1vZGVzKG1hdGNoTW9kZXM/OiBBcnJheTxGaWx0ZXJNYXRjaE1vZGVFeHRlbmRlZFR5cGU+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuX21hdGNoTW9kZXMgPSBtYXRjaE1vZGVzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaWx0ZXIgdGl0bGUuIElmIG5vbiBwcm92aWRlZCwgdGhlIGRlZmF1bHRzIGFyZSBhcHBsaWVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHRpdGxlIFRpdGxlIGZvciB0aGUgZmllbGQuXG4gICAgICovXG4gICAgcHVibGljIHdpdGhUaXRsZSh0aXRsZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX3RpdGxlID0gdGl0bGU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcGllcyBjdXJyZW50IGRlc2NyaXB0b3IgdG8gYSBuZXcgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIGNvcHkoKTogRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4ge1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gbmV3IEZpbHRlckRlc2NyaXB0b3I8RmlsdGVyTW9kZWwsIFRhYmxlTW9kZWw+KHRoaXMuX3Byb3BlcnR5KTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZGVzY3JpcHRvcik7XG4gICAgICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb3B5RmllbGRzVG8oZGVzY3JpcHRvcjogRmlsdGVyRGVzY3JpcHRvcjxGaWx0ZXJNb2RlbCwgVGFibGVNb2RlbD4pIHtcbiAgICAgICAgZGVzY3JpcHRvci5fZmlsdGVyVHlwZSA9IHRoaXMuX2ZpbHRlclR5cGU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2hhc0RlZmF1bHRWYWx1ZSA9IHRoaXMuX2hhc0RlZmF1bHRWYWx1ZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGVmYXVsdFZhbHVlID0gdGhpcy5fZGVmYXVsdFZhbHVlO1xuICAgICAgICBkZXNjcmlwdG9yLl9kZWZhdWx0TWF0Y2hNb2RlID0gdGhpcy5fZGVmYXVsdE1hdGNoTW9kZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGlzcGxheUZvcm1hdCA9IHRoaXMuX2Rpc3BsYXlGb3JtYXQ7XG4gICAgICAgIGRlc2NyaXB0b3IuX2xvY2FsZSA9IHRoaXMuX2xvY2FsZTtcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyTWluRnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZGVzY3JpcHRvci5fbnVtYmVyVXNlR3JvdXBpbmcgPSB0aGlzLl9udW1iZXJVc2VHcm91cGluZztcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVBpY2tlckZvcm1hdCA9IHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQ7XG4gICAgICAgIGRlc2NyaXB0b3IuX2RhdGVQaWNrZXJTaG93VGltZSA9IHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVZhbHVlVXRjID0gdGhpcy5fZGF0ZVZhbHVlVXRjO1xuICAgICAgICBkZXNjcmlwdG9yLl9kYXRlVmFsdWVOb1RpbWV6b25lID0gdGhpcy5fZGF0ZVZhbHVlTm9UaW1lem9uZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVZhbHVlTm9UaW1lID0gdGhpcy5fZGF0ZVZhbHVlTm9UaW1lO1xuICAgICAgICBkZXNjcmlwdG9yLl9wbGFjZWhvbGRlciA9IHRoaXMuX3BsYWNlaG9sZGVyO1xuICAgICAgICBkZXNjcmlwdG9yLl9jbGFzc05hbWUgPSB0aGlzLl9jbGFzc05hbWU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbldpZHRoID0gdGhpcy5fY29sdW1uV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbk1pbldpZHRoID0gdGhpcy5fY29sdW1uTWluV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbkNsYXNzTmFtZSA9IHRoaXMuX2NvbHVtbkNsYXNzTmFtZTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -16,16 +16,27 @@ export class LookupDataProvider extends LookupDataProviderInst {
|
|
|
16
16
|
return lookupDataProviderWithService(serviceType);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
export function lookupDataProvider(type,
|
|
20
|
-
|
|
19
|
+
export function lookupDataProvider(type, serviceTypeOrOpts,
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
21
|
+
opts) {
|
|
22
|
+
if (serviceTypeOrOpts === undefined || typeof serviceTypeOrOpts === 'function') {
|
|
23
|
+
return new LookupDataProviderInst(undefined, serviceTypeOrOpts);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return new LookupDataProviderInst(undefined, undefined);
|
|
27
|
+
}
|
|
21
28
|
}
|
|
22
|
-
export function lookupDataProviderWithService(serviceType
|
|
29
|
+
export function lookupDataProviderWithService(serviceType,
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
31
|
+
opts) {
|
|
23
32
|
return new LookupDataProviderInst(undefined, serviceType);
|
|
24
33
|
}
|
|
25
34
|
export function lookupDataProviderFromClass(type, serviceType) {
|
|
26
35
|
return new LookupDataProviderInst(type, serviceType);
|
|
27
36
|
}
|
|
28
|
-
export function lookupDataProviderFromModel(model,
|
|
29
|
-
return
|
|
37
|
+
export function lookupDataProviderFromModel(model, serviceTypeOrOpts, opts) {
|
|
38
|
+
return typeof serviceTypeOrOpts === 'function'
|
|
39
|
+
? new LookupDataProviderInst(model.type, serviceTypeOrOpts)
|
|
40
|
+
: new LookupDataProviderInst(model.type, undefined);
|
|
30
41
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWRhdGEtcHJvdmlkZXIuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2Zvcm0vYXBpL3NyYy9kYXRhLXByb3ZpZGVycy9sb29rdXAtZGF0YS1wcm92aWRlci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBMkI7SUFDL0Q7UUFDSSxLQUFLLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTTtRQUNoQixPQUFPLGtCQUFrQixFQUFTLENBQUM7SUFDdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQVEsSUFBc0I7UUFDakQsT0FBTywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLG9CQUFvQixDQUM5QixJQUFzQixFQUN0QixXQUFzQztRQUV0QyxPQUFPLDJCQUEyQixDQUFpQixJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQ3JCLFdBQTBDO1FBRTFDLE9BQU8sNkJBQTZCLENBQXlCLFdBQVcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDSjtBQVFELE1BQU0sVUFBVSxrQkFBa0IsQ0FBaUUsSUFBNEIsRUFBRSxXQUEwQjtJQUN2SixPQUFPLElBQUksc0JBQXNCLENBQTBDLFNBQVMsRUFBRSxXQUEyQixDQUFDLENBQUM7QUFDdkgsQ0FBQztBQUVELE1BQU0sVUFBVSw2QkFBNkIsQ0FDekMsV0FBc0M7SUFFdEMsT0FBTyxJQUFJLHNCQUFzQixDQUF1RCxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDcEgsQ0FBQztBQU9ELE1BQU0sVUFBVSwyQkFBMkIsQ0FBaUUsSUFBc0IsRUFBRSxXQUEwQjtJQUMxSixPQUFPLElBQUksc0JBQXNCLENBQWlELElBQUksRUFBRSxXQUEyQixDQUFDLENBQUM7QUFDekgsQ0FBQztBQVNELE1BQU0sVUFBVSwyQkFBMkIsQ0FDdkMsS0FBeUMsRUFDekMsV0FBMEI7SUFFMUIsT0FBTyxJQUFJLHNCQUFzQixDQUFpRCxLQUFLLENBQUMsSUFBd0IsRUFBRSxXQUEyQixDQUFDLENBQUM7QUFDbkosQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NUeXBlLCBTZXJ2aWNlQ2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtMb29rdXBEYXRhUHJvdmlkZXJJbnN0fSBmcm9tICcuL2xvb2t1cC5kYXRhLXByb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIExvb2t1cERhdGFQcm92aWRlciBleHRlbmRzIExvb2t1cERhdGFQcm92aWRlckluc3Q8YW55PiB7XG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGU8TW9kZWw+KCk6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cERhdGFQcm92aWRlcjxNb2RlbD4oKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21DbGFzczxNb2RlbD4odHlwZTogQ2xhc3NUeXBlPE1vZGVsPik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBsb29rdXBEYXRhUHJvdmlkZXJGcm9tQ2xhc3ModHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tQ2xhc3NXaXRoU2VydmljZTxNb2RlbCwgU2VydmljZT4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4gICAgKTogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgQ2xhc3NUeXBlPE1vZGVsPiwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4ge1xuICAgICAgICByZXR1cm4gbG9va3VwRGF0YVByb3ZpZGVyRnJvbUNsYXNzPE1vZGVsLCBTZXJ2aWNlPih0eXBlLCBzZXJ2aWNlVHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tU2VydmljZTxTZXJ2aWNlVHlwZSwgTW9kZWxUeXBlPihcbiAgICAgICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZVR5cGU+XG4gICAgKTogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbFR5cGUsIFNlcnZpY2VUeXBlLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZVR5cGU+PiB7XG4gICAgICAgIHJldHVybiBsb29rdXBEYXRhUHJvdmlkZXJXaXRoU2VydmljZTxTZXJ2aWNlVHlwZSwgTW9kZWxUeXBlPihzZXJ2aWNlVHlwZSk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyPE1vZGVsPigpOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXI8TW9kZWw+KHR5cGU6IFR5cGVEZXNjcmlwdG9yPE1vZGVsPik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueT4oXG4gICAgdHlwZTogVHlwZURlc2NyaXB0b3I8TW9kZWw+LFxuICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueSwgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4odHlwZT86IFR5cGVEZXNjcmlwdG9yPE1vZGVsPiwgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3MpIHtcbiAgICByZXR1cm4gbmV3IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzPih1bmRlZmluZWQsIHNlcnZpY2VUeXBlIGFzIFNlcnZpY2VDbGFzcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXJXaXRoU2VydmljZTxTZXJ2aWNlLCBNb2RlbD4oXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4ge1xuICAgIHJldHVybiBuZXcgTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+Pih1bmRlZmluZWQsIHNlcnZpY2VUeXBlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbD4odHlwZTogQ2xhc3NUeXBlPE1vZGVsPik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UgPSBhbnk+KFxuICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU2VydmljZSA9IGFueSwgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4odHlwZTogQ2xhc3NUeXBlPE1vZGVsPiwgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3MpIHtcbiAgICByZXR1cm4gbmV3IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzcz4odHlwZSwgc2VydmljZVR5cGUgYXMgU2VydmljZUNsYXNzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21Nb2RlbDxNb2RlbCwgTW9kZWxDbGFzcyA9IENsYXNzVHlwZTxNb2RlbD4+KFxuICAgIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIE1vZGVsQ2xhc3M+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIE1vZGVsQ2xhc3MsIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyRnJvbU1vZGVsPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPj4oXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcz4sXG4gICAgU2VydmljZUNsYXNzOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBNb2RlbENsYXNzLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PjtcbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXJGcm9tTW9kZWw8TW9kZWwsIFNlcnZpY2UgPSBhbnksIE1vZGVsQ2xhc3MgPSBDbGFzc1R5cGU8TW9kZWw+LCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPixcbiAgICBzZXJ2aWNlVHlwZT86IFNlcnZpY2VDbGFzc1xuKSB7XG4gICAgcmV0dXJuIG5ldyBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBDbGFzc1R5cGU8TW9kZWw+LCBTZXJ2aWNlQ2xhc3M+KG1vZGVsLnR5cGUgYXMgQ2xhc3NUeXBlPE1vZGVsPiwgc2VydmljZVR5cGUgYXMgU2VydmljZUNsYXNzKTtcbn1cbiJdfQ==
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWRhdGEtcHJvdmlkZXIuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2Zvcm0vYXBpL3NyYy9kYXRhLXByb3ZpZGVycy9sb29rdXAtZGF0YS1wcm92aWRlci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBMkI7SUFDL0Q7UUFDSSxLQUFLLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTTtRQUNoQixPQUFPLGtCQUFrQixFQUF5QixDQUFDO0lBQ3ZELENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUNuQixJQUFzQjtRQUV0QixPQUFPLDJCQUEyQixDQUF3QixJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU0sTUFBTSxDQUFDLG9CQUFvQixDQUM5QixJQUFzQixFQUN0QixXQUFzQztRQUV0QyxPQUFPLDJCQUEyQixDQUFpQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQ3JCLFdBQXNDO1FBRXRDLE9BQU8sNkJBQTZCLENBQWlDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7Q0FDSjtBQXdCRCxNQUFNLFVBQVUsa0JBQWtCLENBQzlCLElBQTRCLEVBQzVCLGlCQUEwRjtBQUMxRiw2REFBNkQ7QUFDN0QsSUFBOEQ7SUFFOUQsSUFBSSxpQkFBaUIsS0FBSyxTQUFTLElBQUksT0FBTyxpQkFBaUIsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUM3RSxPQUFPLElBQUksc0JBQXNCLENBQTBELFNBQVMsRUFBRSxpQkFBaUMsQ0FBQyxDQUFDO0lBQzdJLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxJQUFJLHNCQUFzQixDQUEwRCxTQUFTLEVBQUUsU0FBeUIsQ0FBQyxDQUFDO0lBQ3JJLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLDZCQUE2QixDQUN6QyxXQUFzQztBQUN0Qyw2REFBNkQ7QUFDN0QsSUFBOEQ7SUFFOUQsT0FBTyxJQUFJLHNCQUFzQixDQUF1RSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDcEksQ0FBQztBQVNELE1BQU0sVUFBVSwyQkFBMkIsQ0FDdkMsSUFBc0IsRUFDdEIsV0FBMEI7SUFFMUIsT0FBTyxJQUFJLHNCQUFzQixDQUFpRSxJQUFJLEVBQUUsV0FBMkIsQ0FBQyxDQUFDO0FBQ3pJLENBQUM7QUFXRCxNQUFNLFVBQVUsMkJBQTJCLENBUXpDLEtBQXlDLEVBQUUsaUJBQWdDLEVBQUUsSUFBOEQ7SUFDekksT0FBTyxPQUFPLGlCQUFpQixLQUFLLFVBQVU7UUFDMUMsQ0FBQyxDQUFDLElBQUksc0JBQXNCLENBQ3RCLEtBQUssQ0FBQyxJQUF3QixFQUM5QixpQkFBOEMsQ0FDakQ7UUFDSCxDQUFDLENBQUMsSUFBSSxzQkFBc0IsQ0FBZ0UsS0FBSyxDQUFDLElBQXdCLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDL0ksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NUeXBlLCBTZXJ2aWNlQ2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtMb29rdXBEYXRhUHJvdmlkZXJJbnN0fSBmcm9tICcuL2xvb2t1cC5kYXRhLXByb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIExvb2t1cERhdGFQcm92aWRlciBleHRlbmRzIExvb2t1cERhdGFQcm92aWRlckluc3Q8YW55PiB7XG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGU8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oKTogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cERhdGFQcm92aWRlcjxNb2RlbCwgU29ydHMsIEZpbHRlcnM+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tQ2xhc3M8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD5cbiAgICApOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCBDbGFzc1R5cGU8TW9kZWw+LCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU29ydHMsIEZpbHRlcnM+KHR5cGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUNsYXNzV2l0aFNlcnZpY2U8TW9kZWwsIFNlcnZpY2UsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4gICAgKTogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+IHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnM+KHR5cGUsIHNlcnZpY2VUeXBlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21TZXJ2aWNlPFNlcnZpY2UsIE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgICAgICBzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuICAgICk6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+IHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cERhdGFQcm92aWRlcldpdGhTZXJ2aWNlPFNlcnZpY2UsIE1vZGVsLCBTb3J0cywgRmlsdGVycz4oc2VydmljZVR5cGUpO1xuICAgIH1cbn1cblxuZXhwb3J0IHR5cGUgTG9va3VwRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8VGFibGVNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZU1vZGVsLCBGaWx0ZXJzID0ga2V5b2YgVGFibGVNb2RlbD4gPSB7XG4gICAgZmlsdGVyc1R5cGU/OiBUeXBlRGVzY3JpcHRvcjxGaWx0ZXJzPjtcbiAgICBzb3J0c1R5cGU/OiBUeXBlRGVzY3JpcHRvcjxTb3J0cz47XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KCk6IExvb2t1cERhdGFQcm92aWRlckluc3Q8XG4gICAgTW9kZWwsXG4gICAgdW5kZWZpbmVkLFxuICAgIFNvcnRzLFxuICAgIEZpbHRlcnMsXG4gICAgdW5kZWZpbmVkLFxuICAgIHVuZGVmaW5lZFxuPjtcbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXI8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgdHlwZTogVHlwZURlc2NyaXB0b3I8TW9kZWw+LFxuICAgIG9wdHM/OiBMb29rdXBEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPE1vZGVsPixcbiAgICBzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPixcbiAgICBvcHRzPzogTG9va3VwRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsIFNlcnZpY2VDbGFzcyA9IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+KFxuICAgIHR5cGU/OiBUeXBlRGVzY3JpcHRvcjxNb2RlbD4sXG4gICAgc2VydmljZVR5cGVPck9wdHM/OiBTZXJ2aWNlQ2xhc3MgfCBMb29rdXBEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBvcHRzPzogTG9va3VwRGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKSB7XG4gICAgaWYgKHNlcnZpY2VUeXBlT3JPcHRzID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHNlcnZpY2VUeXBlT3JPcHRzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBuZXcgTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzPih1bmRlZmluZWQsIHNlcnZpY2VUeXBlT3JPcHRzIGFzIFNlcnZpY2VDbGFzcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3M+KHVuZGVmaW5lZCwgdW5kZWZpbmVkIGFzIFNlcnZpY2VDbGFzcyk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyV2l0aFNlcnZpY2U8U2VydmljZSwgTW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIG9wdHM/OiBMb29rdXBEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PiB7XG4gICAgcmV0dXJuIG5ldyBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+Pih1bmRlZmluZWQsIHNlcnZpY2VUeXBlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCBDbGFzc1R5cGU8TW9kZWw+LCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+LFxuICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4pOiBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyRnJvbUNsYXNzPE1vZGVsLCBTZXJ2aWNlID0gYW55LCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsIFNlcnZpY2VDbGFzcyA9IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+KFxuICAgIHR5cGU6IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3Ncbikge1xuICAgIHJldHVybiBuZXcgTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzcz4odHlwZSwgc2VydmljZVR5cGUgYXMgU2VydmljZUNsYXNzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvb2t1cERhdGFQcm92aWRlckZyb21Nb2RlbDxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPj4oXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcz4sXG4gICAgb3B0cz86IExvb2t1cERhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycz5cbik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgU29ydHMsIEZpbHRlcnMsIE1vZGVsQ2xhc3MsIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gbG9va3VwRGF0YVByb3ZpZGVyRnJvbU1vZGVsPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsIFNlcnZpY2UgPSBhbnksIE1vZGVsQ2xhc3MgPSBDbGFzc1R5cGU8TW9kZWw+PihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPixcbiAgICBTZXJ2aWNlQ2xhc3M6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgb3B0cz86IExvb2t1cERhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycz5cbik6IExvb2t1cERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBNb2RlbENsYXNzLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PjtcbmV4cG9ydCBmdW5jdGlvbiBsb29rdXBEYXRhUHJvdmlkZXJGcm9tTW9kZWw8XG4gICAgTW9kZWwsXG4gICAgU2VydmljZSA9IGFueSxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCxcbiAgICBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPixcbiAgICBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuPihtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsLCBNb2RlbENsYXNzPiwgc2VydmljZVR5cGVPck9wdHM/OiBTZXJ2aWNlQ2xhc3MsIG9wdHM/OiBMb29rdXBEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+KSB7XG4gICAgcmV0dXJuIHR5cGVvZiBzZXJ2aWNlVHlwZU9yT3B0cyA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IG5ldyBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4oXG4gICAgICAgICAgICAgIG1vZGVsLnR5cGUgYXMgQ2xhc3NUeXBlPE1vZGVsPixcbiAgICAgICAgICAgICAgc2VydmljZVR5cGVPck9wdHMgYXMgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuICAgICAgICAgIClcbiAgICAgICAgOiBuZXcgTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPihtb2RlbC50eXBlIGFzIENsYXNzVHlwZTxNb2RlbD4sIHVuZGVmaW5lZCk7XG59XG4iXX0=
|
|
@@ -12,4 +12,4 @@ export class LookupDataProviderInst extends DataProviderInst {
|
|
|
12
12
|
return this;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLmRhdGEtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9mb3JtL2FwaS9zcmMvZGF0YS1wcm92aWRlcnMvbG9va3VwLmRhdGEtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGdCQUFnQixFQUEyRSxNQUFNLDZCQUE2QixDQUFDO0FBRXJKLE1BQU0sT0FBTyxzQkFRVCxTQUFRLGdCQUEwRDtJQUtsRSxZQUFtQixJQUFnQixFQUFFLFdBQXlCO1FBQzFELEtBQUssQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFIbkIsWUFBTyxHQUFtRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFJN0YsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQWtFO1FBQ3pFLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NPcHRUeXBlLCBEYXRhUHJvdmlkZXJJbnN0LCBJTG9va3VwRGF0YVByb3ZpZGVyLCBMb29rdXBEYXRhUHJvdmlkZXJMb29rdXBGblR5cGUsIFNlcnZpY2VDbGFzc09wdFR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBMb29rdXBEYXRhUHJvdmlkZXJJbnN0PFxuICAgICAgICBNb2RlbCxcbiAgICAgICAgU2VydmljZSA9IGFueSxcbiAgICAgICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICAgICAgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLFxuICAgICAgICBNb2RlbENsYXNzID0gQ2xhc3NPcHRUeXBlPE1vZGVsPixcbiAgICAgICAgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzT3B0VHlwZTxTZXJ2aWNlPlxuICAgID5cbiAgICBleHRlbmRzIERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz5cbiAgICBpbXBsZW1lbnRzIElMb29rdXBEYXRhUHJvdmlkZXI8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBNb2RlbENsYXNzLCBTZXJ2aWNlQ2xhc3M+XG57XG4gICAgcHJvdGVjdGVkIF9sb29rdXA6IExvb2t1cERhdGFQcm92aWRlckxvb2t1cEZuVHlwZTxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnM+ID0gKCkgPT4gW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IodHlwZTogTW9kZWxDbGFzcywgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzcykge1xuICAgICAgICBzdXBlcih0eXBlLCBzZXJ2aWNlVHlwZSk7XG4gICAgfVxuXG4gICAgZ2V0IGxvb2t1cCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvb2t1cDtcbiAgICB9XG5cbiAgICB3aXRoTG9va3VwKGZuOiBMb29rdXBEYXRhUHJvdmlkZXJMb29rdXBGblR5cGU8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPik6IHRoaXMge1xuICAgICAgICB0aGlzLl9sb29rdXAgPSBmbjtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxufVxuIl19
|