@sebgroup/green-angular 1.0.0-beta.11 → 1.0.0-beta.14

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.
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, Output, ViewChild, EventEmitter, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, Output, ViewChild, EventEmitter, } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { createDropdown, dropdownValues, } from '@sebgroup/extract';
4
4
  import * as i0 from "@angular/core";
@@ -7,14 +7,23 @@ export class NggDropdownComponent {
7
7
  constructor(cd) {
8
8
  this.cd = cd;
9
9
  this.loop = false;
10
+ this._multiSelect = false;
10
11
  this.options = [];
11
12
  this.valueChange = new EventEmitter();
12
13
  this.toggler = dropdownValues.elements?.toggler;
13
14
  this.listbox = dropdownValues.elements?.listbox;
15
+ this.fieldset = dropdownValues.elements?.fieldset;
14
16
  this.trackByKey = (index, option) => {
15
- return option.key;
17
+ return option[''] || option.key;
16
18
  };
17
19
  }
20
+ set multiSelect(value) {
21
+ this._multiSelect =
22
+ value === '' || value === 'true' || value.toString() === 'true' || false;
23
+ }
24
+ get multiSelect() {
25
+ return this._multiSelect;
26
+ }
18
27
  get value() {
19
28
  return this._value;
20
29
  }
@@ -23,18 +32,48 @@ export class NggDropdownComponent {
23
32
  }
24
33
  ngAfterViewInit() {
25
34
  if (this.togglerRef?.nativeElement && this.listboxRef?.nativeElement) {
26
- this.handler = createDropdown(this.props, this.togglerRef.nativeElement, this.listboxRef.nativeElement, (dropdown) => {
35
+ this.handler = createDropdown(this.props, this.togglerRef.nativeElement, this.listboxRef.nativeElement, this.fieldsetRef?.nativeElement, (dropdown) => {
27
36
  this.dropdown = dropdown;
28
37
  this.toggler = dropdown.elements.toggler;
29
38
  this.listbox = dropdown.elements.listbox;
30
- const selected = this.dropdown.options?.find((option) => option.selected);
31
- if (selected && this._value !== selected?.value) {
32
- setTimeout(() => {
33
- this._value = selected.value;
34
- this.valueChange.emit(selected.value);
35
- this.onChangeFn && this.onChangeFn(selected.value);
36
- this.onTouchedFn && this.onTouchedFn();
37
- }, 0);
39
+ this.fieldset = dropdown.elements.fieldset;
40
+ // TODO: refactor state handling to only emit value changes when value changes (not on state change), perhaps using rxjs?
41
+ if (!dropdown.isMultiSelect) {
42
+ let selectedOption = this.dropdown.options?.find((option) => option.selected);
43
+ if ((selectedOption && !this._value) ||
44
+ (selectedOption &&
45
+ selectedOption[dropdown.useValue] !==
46
+ this._value[dropdown.useValue])) {
47
+ const { attributes, classes, active, selected, ...data } = selectedOption;
48
+ selectedOption = dropdown.selectValue
49
+ ? data[dropdown.selectValue]
50
+ : data;
51
+ setTimeout(() => {
52
+ this._value = selectedOption;
53
+ this.valueChange.emit(selectedOption);
54
+ this.onChangeFn && this.onChangeFn(selectedOption);
55
+ this.onTouchedFn && this.onTouchedFn();
56
+ }, 0);
57
+ }
58
+ }
59
+ else {
60
+ const selectedOption = this.dropdown.options
61
+ ?.filter((option) => option.selected)
62
+ .map((option) => {
63
+ const { attributes, classes, active, selected, ...data } = option;
64
+ return dropdown.selectValue ? data[dropdown.selectValue] : data;
65
+ });
66
+ if ((this._value !== undefined || selectedOption?.length > 0) &&
67
+ this._value !== [] &&
68
+ selectedOption &&
69
+ JSON.stringify(this._value) !== JSON.stringify(selectedOption)) {
70
+ setTimeout(() => {
71
+ this._value = selectedOption;
72
+ this.valueChange.emit(selectedOption);
73
+ this.onChangeFn && this.onChangeFn(selectedOption);
74
+ this.onTouchedFn && this.onTouchedFn();
75
+ }, 0);
76
+ }
38
77
  }
39
78
  this.cd.detectChanges();
40
79
  });
@@ -58,39 +97,39 @@ export class NggDropdownComponent {
58
97
  registerOnTouched(fn) {
59
98
  this.onTouchedFn = fn;
60
99
  }
61
- select(option) {
62
- this.handler?.select(option);
63
- this._value = option.value;
64
- this.valueChange.emit(option.value);
65
- this.onChangeFn && this.onChangeFn(option.value);
66
- this.onTouchedFn && this.onTouchedFn();
67
- }
68
100
  get props() {
69
101
  return {
70
102
  id: this.id || this.dropdown?.id,
71
- text: this.text,
103
+ texts: this.texts,
104
+ useValue: this.useValue,
105
+ display: this.display,
106
+ selectValue: this.selectValue,
72
107
  options: this.options,
73
108
  loop: this.loop,
74
109
  value: this.value,
110
+ multiSelect: this.multiSelect,
75
111
  };
76
112
  }
77
113
  setSelectionByValue(value) {
78
- if (this._value !== value) {
79
- this._value = value;
80
- const selected = this.handler?.dropdown?.options.find((option) => option.value === value);
81
- if (selected)
82
- this.handler?.select(selected);
114
+ if (!this.dropdown?.isMultiSelect) {
115
+ if (this._value !== value && value !== undefined) {
116
+ this._value = value;
117
+ const valueKey = this.handler?.dropdown.useValue;
118
+ const selected = this.handler?.dropdown?.options.find((option) => option[valueKey] === value[valueKey] || option[valueKey] === value);
119
+ if (selected)
120
+ this.handler?.select(selected);
121
+ }
83
122
  }
84
123
  }
85
124
  }
86
- NggDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
87
- NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: NggDropdownComponent, selector: "ngg-dropdown", inputs: { id: "id", text: "text", loop: "loop", label: "label", options: "options", valid: "valid", invalid: "invalid", value: "value" }, outputs: { valueChange: "valueChange" }, providers: [
125
+ NggDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
126
+ NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: NggDropdownComponent, selector: "ngg-dropdown", inputs: { id: "id", texts: "texts", loop: "loop", display: "display", selectValue: "selectValue", useValue: "useValue", multiSelect: "multiSelect", label: "label", options: "options", valid: "valid", invalid: "invalid", value: "value" }, outputs: { valueChange: "valueChange" }, providers: [
88
127
  {
89
128
  provide: NG_VALUE_ACCESSOR,
90
129
  useExisting: NggDropdownComponent,
91
130
  multi: true,
92
131
  },
93
- ], viewQueries: [{ propertyName: "togglerRef", first: true, predicate: ["togglerRef"], descendants: true }, { propertyName: "listboxRef", first: true, predicate: ["listboxRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
132
+ ], viewQueries: [{ propertyName: "togglerRef", first: true, predicate: ["togglerRef"], descendants: true }, { propertyName: "listboxRef", first: true, predicate: ["listboxRef"], descendants: true }, { propertyName: "fieldsetRef", first: true, predicate: ["fieldsetRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
94
133
  <div>
95
134
  <span
96
135
  class="label"
@@ -103,7 +142,7 @@ NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
103
142
  label ? toggler?.attributes?.id + '_label' : null
104
143
  "
105
144
  [attr.aria-describedby]="
106
- formInfo?.innerText && formInfo.innerText.length > 0
145
+ formInfo?.textContent && (formInfo?.textContent?.length ?? 0 > 0)
107
146
  ? toggler?.attributes?.id + '_info'
108
147
  : null
109
148
  "
@@ -120,7 +159,9 @@ NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
120
159
  [class.is-valid]="valid"
121
160
  [class.is-invalid]="invalid"
122
161
  >
123
- <span>{{ dropdown?.text }}</span>
162
+ <span>{{
163
+ dropdown?.texts?.select || dropdown?.texts?.placeholder
164
+ }}</span>
124
165
  </button>
125
166
  <span
126
167
  class="form-info"
@@ -144,9 +185,9 @@ NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
144
185
  class="close m-4 m-sm-2 d-block d-sm-none"
145
186
  (click)="handler?.close()"
146
187
  >
147
- <span class="sr-only">Close</span>
188
+ <span class="sr-only">{{ dropdown?.texts?.close }}</span>
148
189
  </button>
149
- <ul role="listbox">
190
+ <ul role="listbox" *ngIf="!dropdown?.isMultiSelect">
150
191
  <li
151
192
  *ngFor="let option of dropdown?.options; trackBy: trackByKey"
152
193
  [id]="option.attributes.id"
@@ -156,13 +197,42 @@ NggDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
156
197
  [class]="option.classes"
157
198
  (click)="handler?.select(option)"
158
199
  >
159
- {{ option.key }}
200
+ {{ option[dropdown!.display] }}
160
201
  </li>
161
202
  </ul>
203
+ <div *ngIf="dropdown?.isMultiSelect" class="sg-fieldset-container">
204
+ <fieldset
205
+ #fieldsetRef
206
+ [attr.aria-describedby]="fieldset?.attributes?.id"
207
+ role="listbox"
208
+ tabIndex="-1"
209
+ aria-multiselectable="true"
210
+ >
211
+ <legend class="sr-only" [id]="fieldset?.attributes?.id">
212
+ Options
213
+ </legend>
214
+ <label
215
+ class="form-control"
216
+ [attr.role]="option.attributes.role"
217
+ [id]="option.attributes.id"
218
+ [attr.aria-selected]="option.attributes['aria-selected']"
219
+ [class]="option.classes"
220
+ *ngFor="let option of dropdown?.options; trackBy: trackByKey"
221
+ >
222
+ <input
223
+ type="checkbox"
224
+ (change)="handler?.select(option, false)"
225
+ [checked]="option.selected"
226
+ />
227
+ <span>{{ option[dropdown!.display] }}</span>
228
+ <i></i>
229
+ </label>
230
+ </fieldset>
231
+ </div>
162
232
  </div>
163
233
  </div>
164
234
  `, isInline: true, directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownComponent, decorators: [{
235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownComponent, decorators: [{
166
236
  type: Component,
167
237
  args: [{
168
238
  selector: 'ngg-dropdown',
@@ -179,7 +249,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
179
249
  label ? toggler?.attributes?.id + '_label' : null
180
250
  "
181
251
  [attr.aria-describedby]="
182
- formInfo?.innerText && formInfo.innerText.length > 0
252
+ formInfo?.textContent && (formInfo?.textContent?.length ?? 0 > 0)
183
253
  ? toggler?.attributes?.id + '_info'
184
254
  : null
185
255
  "
@@ -196,7 +266,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
196
266
  [class.is-valid]="valid"
197
267
  [class.is-invalid]="invalid"
198
268
  >
199
- <span>{{ dropdown?.text }}</span>
269
+ <span>{{
270
+ dropdown?.texts?.select || dropdown?.texts?.placeholder
271
+ }}</span>
200
272
  </button>
201
273
  <span
202
274
  class="form-info"
@@ -220,9 +292,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
220
292
  class="close m-4 m-sm-2 d-block d-sm-none"
221
293
  (click)="handler?.close()"
222
294
  >
223
- <span class="sr-only">Close</span>
295
+ <span class="sr-only">{{ dropdown?.texts?.close }}</span>
224
296
  </button>
225
- <ul role="listbox">
297
+ <ul role="listbox" *ngIf="!dropdown?.isMultiSelect">
226
298
  <li
227
299
  *ngFor="let option of dropdown?.options; trackBy: trackByKey"
228
300
  [id]="option.attributes.id"
@@ -232,9 +304,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
232
304
  [class]="option.classes"
233
305
  (click)="handler?.select(option)"
234
306
  >
235
- {{ option.key }}
307
+ {{ option[dropdown!.display] }}
236
308
  </li>
237
309
  </ul>
310
+ <div *ngIf="dropdown?.isMultiSelect" class="sg-fieldset-container">
311
+ <fieldset
312
+ #fieldsetRef
313
+ [attr.aria-describedby]="fieldset?.attributes?.id"
314
+ role="listbox"
315
+ tabIndex="-1"
316
+ aria-multiselectable="true"
317
+ >
318
+ <legend class="sr-only" [id]="fieldset?.attributes?.id">
319
+ Options
320
+ </legend>
321
+ <label
322
+ class="form-control"
323
+ [attr.role]="option.attributes.role"
324
+ [id]="option.attributes.id"
325
+ [attr.aria-selected]="option.attributes['aria-selected']"
326
+ [class]="option.classes"
327
+ *ngFor="let option of dropdown?.options; trackBy: trackByKey"
328
+ >
329
+ <input
330
+ type="checkbox"
331
+ (change)="handler?.select(option, false)"
332
+ [checked]="option.selected"
333
+ />
334
+ <span>{{ option[dropdown!.display] }}</span>
335
+ <i></i>
336
+ </label>
337
+ </fieldset>
338
+ </div>
238
339
  </div>
239
340
  </div>
240
341
  `,
@@ -249,10 +350,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
249
350
  }]
250
351
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { id: [{
251
352
  type: Input
252
- }], text: [{
353
+ }], texts: [{
253
354
  type: Input
254
355
  }], loop: [{
255
356
  type: Input
357
+ }], display: [{
358
+ type: Input
359
+ }], selectValue: [{
360
+ type: Input
361
+ }], useValue: [{
362
+ type: Input
363
+ }], multiSelect: [{
364
+ type: Input
256
365
  }], label: [{
257
366
  type: Input
258
367
  }], options: [{
@@ -271,5 +380,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
271
380
  }], listboxRef: [{
272
381
  type: ViewChild,
273
382
  args: ['listboxRef']
383
+ }], fieldsetRef: [{
384
+ type: ViewChild,
385
+ args: ['fieldsetRef']
274
386
  }] } });
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEdBRWIsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3hFLE9BQU8sRUFDTCxjQUFjLEVBT2QsY0FBYyxHQUNmLE1BQU0sbUJBQW1CLENBQUE7OztBQXFGMUIsTUFBTSxPQUFPLG9CQUFvQjtJQXNDL0IsWUFBb0IsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFqQ2hDLFNBQUksR0FBYSxLQUFLLENBQUE7UUFFdEIsWUFBTyxHQUFxQixFQUFFLENBQUE7UUFhcEIsZ0JBQVcsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQTtRQWUzRSxZQUFPLEdBQTJCLGNBQWMsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFBO1FBQ2xFLFlBQU8sR0FBMkIsY0FBYyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUE7UUFpRWxFLGVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxNQUE4QixFQUFVLEVBQUU7WUFDckUsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFBO1FBQ25CLENBQUMsQ0FBQTtJQWpFMkMsQ0FBQztJQTNCN0MsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ3BCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxRQUFhO1FBQ3JCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBdUJELGVBQWU7UUFDYixJQUFJLElBQUks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QUFDLE1BQU07aUJBQ2hEO3dHQUlVLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFHRixLQUFLO3NCQURSLEtBQUs7Z0JBU2EsV0FBVztzQkFBN0IsTUFBTTtnQkFFeUIsVUFBVTtzQkFBekMsU0FBUzt1QkFBQyxZQUFZO2dCQUlTLFVBQVU7c0JBQXpDLFNBQVM7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7XG4gIGNyZWF0ZURyb3Bkb3duLFxuICBBYnN0cmFjdERyb3Bkb3duLFxuICBEcm9wZG93bkhhbmRsZXIsXG4gIERyb3Bkb3duT3B0aW9uLFxuICBFeHRlbmRlZERyb3Bkb3duT3B0aW9uLFxuICBFbGVtZW50UHJvcHMsXG4gIERyb3Bkb3duQXJncyxcbiAgZHJvcGRvd25WYWx1ZXMsXG59IGZyb20gJ0BzZWJncm91cC9leHRyYWN0J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ2ctZHJvcGRvd24nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXY+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImxhYmVsXCJcbiAgICAgICAgKm5nSWY9XCJsYWJlbFwiXG4gICAgICAgIFtpZF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5pZCArICdfbGFiZWwnXCJcbiAgICAgICAgPnt7IGxhYmVsIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJcbiAgICAgICAgICBsYWJlbCA/IHRvZ2dsZXI/LmF0dHJpYnV0ZXM/LmlkICsgJ19sYWJlbCcgOiBudWxsXG4gICAgICAgIFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiXG4gICAgICAgICAgZm9ybUluZm8/LmlubmVyVGV4dCAmJiBmb3JtSW5mby5pbm5lclRleHQubGVuZ3RoID4gMFxuICAgICAgICAgICAgPyB0b2dnbGVyPy5hdHRyaWJ1dGVzPy5pZCArICdfaW5mbydcbiAgICAgICAgICAgIDogbnVsbFxuICAgICAgICBcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgI3RvZ2dsZXJSZWZcbiAgICAgICAgW2lkXT1cInRvZ2dsZXI/LmF0dHJpYnV0ZXM/LmlkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5bJ2FyaWEtaGFzcG9wdXAnXVwiXG4gICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwidG9nZ2xlcj8uYXR0cmlidXRlcz8uWydhcmlhLWV4cGFuZGVkJ11cIlxuICAgICAgICBbYXR0ci5hcmlhLW93bnNdPVwidG9nZ2xlcj8uYXR0cmlidXRlcz8uWydhcmlhLW93bnMnXVwiXG4gICAgICAgIFt0YWJpbmRleF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy50YWJJbmRleFwiXG4gICAgICAgIFtzdHlsZV09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5zdHlsZVwiXG4gICAgICAgIFtjbGFzc109XCJ0b2dnbGVyPy5jbGFzc2VzXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZXI/LnRvZ2dsZSgpXCJcbiAgICAgICAgW2NsYXNzLmlzLXZhbGlkXT1cInZhbGlkXCJcbiAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiaW52YWxpZFwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuPnt7IGRyb3Bkb3duPy50ZXh0IH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImZvcm0taW5mb1wiXG4gICAgICAgICNmb3JtSW5mb1xuICAgICAgICBbYXR0ci5pZF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5pZCArICdfaW5mbydcIlxuICAgICAgICA+PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2RhdGEtZm9ybS1pbmZvXVwiPjwvbmctY29udGVudFxuICAgICAgPjwvc3Bhbj5cbiAgICAgIDxkaXZcbiAgICAgICAgI2xpc3Rib3hSZWZcbiAgICAgICAgW2lkXT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LmlkXCJcbiAgICAgICAgW2F0dHIucm9sZV09XCJsaXN0Ym94Py5hdHRyaWJ1dGVzPy5yb2xlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1hY3RpdmVkZXNjZW5kYW50XT1cIlxuICAgICAgICAgIGxpc3Rib3g/LmF0dHJpYnV0ZXM/LlsnYXJpYS1hY3RpdmVkZXNjZW5kYW50J11cbiAgICAgICAgXCJcbiAgICAgICAgW3RhYmluZGV4XT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LnRhYkluZGV4XCJcbiAgICAgICAgW3N0eWxlXT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LnN0eWxlXCJcbiAgICAgICAgW2NsYXNzXT1cImxpc3Rib3g/LmNsYXNzZXNcIlxuICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJjbG9zZSBtLTQgbS1zbS0yIGQtYmxvY2sgZC1zbS1ub25lXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlcj8uY2xvc2UoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5DbG9zZTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDx1bCByb2xlPVwibGlzdGJveFwiPlxuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBkcm9wZG93bj8ub3B0aW9uczsgdHJhY2tCeTogdHJhY2tCeUtleVwiXG4gICAgICAgICAgICBbaWRdPVwib3B0aW9uLmF0dHJpYnV0ZXMuaWRcIlxuICAgICAgICAgICAgW2F0dHIucm9sZV09XCJvcHRpb24uYXR0cmlidXRlcy5yb2xlXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwib3B0aW9uLmF0dHJpYnV0ZXNbJ2FyaWEtc2VsZWN0ZWQnXVwiXG4gICAgICAgICAgICBbc3R5bGVdPVwib3B0aW9uLmF0dHJpYnV0ZXMuc3R5bGVcIlxuICAgICAgICAgICAgW2NsYXNzXT1cIm9wdGlvbi5jbGFzc2VzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVyPy5zZWxlY3Qob3B0aW9uKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgb3B0aW9uLmtleSB9fVxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogTmdnRHJvcGRvd25Db21wb25lbnQsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmdnRHJvcGRvd25Db21wb25lbnRcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXNcbntcbiAgQElucHV0KCkgaWQ/OiBzdHJpbmdcbiAgQElucHV0KCkgdGV4dD86IHN0cmluZ1xuICBASW5wdXQoKSBsb29wPzogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIGxhYmVsPzogc3RyaW5nXG4gIEBJbnB1dCgpIG9wdGlvbnM6IERyb3Bkb3duT3B0aW9uW10gPSBbXVxuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW5cbiAgQElucHV0KCkgaW52YWxpZD86IGJvb2xlYW5cblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVcbiAgfVxuICBzZXQgdmFsdWUobmV3VmFsdWU6IGFueSkge1xuICAgIHRoaXMuc2V0U2VsZWN0aW9uQnlWYWx1ZShuZXdWYWx1ZSlcbiAgfVxuICBwcml2YXRlIF92YWx1ZTogYW55XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG5cbiAgQFZpZXdDaGlsZCgndG9nZ2xlclJlZicpIHB1YmxpYyB0b2dnbGVyUmVmOlxuICAgIHwgRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgICB8IHVuZGVmaW5lZFxuXG4gIEBWaWV3Q2hpbGQoJ2xpc3Rib3hSZWYnKSBwdWJsaWMgbGlzdGJveFJlZjpcbiAgICB8IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICAgfCB1bmRlZmluZWRcblxuICBvbkNoYW5nZUZuPzogKHZhbHVlOiBhbnkpID0+IHZvaWRcbiAgb25Ub3VjaGVkRm4/OiBhbnlcblxuICBkcm9wZG93bj86IEFic3RyYWN0RHJvcGRvd25cbiAgaGFuZGxlcj86IERyb3Bkb3duSGFuZGxlclxuICB0b2dnbGVyPzogUGFydGlhbDxFbGVtZW50UHJvcHM+ID0gZHJvcGRvd25WYWx1ZXMuZWxlbWVudHM/LnRvZ2dsZXJcbiAgbGlzdGJveD86IFBhcnRpYWw8RWxlbWVudFByb3BzPiA9IGRyb3Bkb3duVmFsdWVzLmVsZW1lbnRzPy5saXN0Ym94XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRvZ2dsZXJSZWY/Lm5hdGl2ZUVsZW1lbnQgJiYgdGhpcy5saXN0Ym94UmVmPy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmhhbmRsZXIgPSBjcmVhdGVEcm9wZG93bihcbiAgICAgICAgdGhpcy5wcm9wcyxcbiAgICAgICAgdGhpcy50b2dnbGVyUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIHRoaXMubGlzdGJveFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAoZHJvcGRvd24pID0+IHtcbiAgICAgICAgICB0aGlzLmRyb3Bkb3duID0gZHJvcGRvd25cbiAgICAgICAgICB0aGlzLnRvZ2dsZXIgPSBkcm9wZG93bi5lbGVtZW50cy50b2dnbGVyXG4gICAgICAgICAgdGhpcy5saXN0Ym94ID0gZHJvcGRvd24uZWxlbWVudHMubGlzdGJveFxuXG4gICAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLmRyb3Bkb3duLm9wdGlvbnM/LmZpbmQoXG4gICAgICAgICAgICAob3B0aW9uKSA9PiBvcHRpb24uc2VsZWN0ZWRcbiAgICAgICAgICApXG4gICAgICAgICAgaWYgKHNlbGVjdGVkICYmIHRoaXMuX3ZhbHVlICE9PSBzZWxlY3RlZD8udmFsdWUpIHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLl92YWx1ZSA9IHNlbGVjdGVkLnZhbHVlXG4gICAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChzZWxlY3RlZC52YWx1ZSlcbiAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZUZuICYmIHRoaXMub25DaGFuZ2VGbihzZWxlY3RlZC52YWx1ZSlcbiAgICAgICAgICAgICAgdGhpcy5vblRvdWNoZWRGbiAmJiB0aGlzLm9uVG91Y2hlZEZuKClcbiAgICAgICAgICAgIH0sIDApXG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZXI/LmRlc3Ryb3koKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuaGFuZGxlciAmJlxuICAgICAgKGNoYW5nZXMuaWQgfHwgY2hhbmdlcy50ZXh0IHx8IGNoYW5nZXMubG9vcCB8fCBjaGFuZ2VzLm9wdGlvbnMpXG4gICAgKSB7XG4gICAgICB0aGlzLmhhbmRsZXIudXBkYXRlKHRoaXMucHJvcHMpXG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlRm4gPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkRm4gPSBmblxuICB9XG5cbiAgc2VsZWN0KG9wdGlvbjogRXh0ZW5kZWREcm9wZG93bk9wdGlvbikge1xuICAgIHRoaXMuaGFuZGxlcj8uc2VsZWN0KG9wdGlvbilcbiAgICB0aGlzLl92YWx1ZSA9IG9wdGlvbi52YWx1ZVxuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChvcHRpb24udmFsdWUpXG4gICAgdGhpcy5vbkNoYW5nZUZuICYmIHRoaXMub25DaGFuZ2VGbihvcHRpb24udmFsdWUpXG4gICAgdGhpcy5vblRvdWNoZWRGbiAmJiB0aGlzLm9uVG91Y2hlZEZuKClcbiAgfVxuXG4gIHRyYWNrQnlLZXkgPSAoaW5kZXg6IG51bWJlciwgb3B0aW9uOiBFeHRlbmRlZERyb3Bkb3duT3B0aW9uKTogc3RyaW5nID0+IHtcbiAgICByZXR1cm4gb3B0aW9uLmtleVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgcHJvcHMoKTogRHJvcGRvd25BcmdzIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuaWQgfHwgdGhpcy5kcm9wZG93bj8uaWQsXG4gICAgICB0ZXh0OiB0aGlzLnRleHQsXG4gICAgICBvcHRpb25zOiB0aGlzLm9wdGlvbnMsXG4gICAgICBsb29wOiB0aGlzLmxvb3AsXG4gICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFNlbGVjdGlvbkJ5VmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmICh0aGlzLl92YWx1ZSAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWVcblxuICAgICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLmhhbmRsZXI/LmRyb3Bkb3duPy5vcHRpb25zLmZpbmQoXG4gICAgICAgIChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gdmFsdWVcbiAgICAgIClcbiAgICAgIGlmIChzZWxlY3RlZCkgdGhpcy5oYW5kbGVyPy5zZWxlY3Qoc2VsZWN0ZWQpXG4gICAgfVxuICB9XG59XG4iXX0=
387
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxHQUViLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4RSxPQUFPLEVBQ0wsY0FBYyxFQU9kLGNBQWMsR0FFZixNQUFNLG1CQUFtQixDQUFBOzs7QUFvSDFCLE1BQU0sT0FBTyxvQkFBb0I7SUErQy9CLFlBQW9CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBMUNoQyxTQUFJLEdBQWEsS0FBSyxDQUFBO1FBWXZCLGlCQUFZLEdBQUcsS0FBSyxDQUFBO1FBRW5CLFlBQU8sR0FBcUIsRUFBRSxDQUFBO1FBWXBCLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUE7UUFZM0UsWUFBTyxHQUEyQixjQUFjLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQTtRQUNsRSxZQUFPLEdBQTJCLGNBQWMsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFBO1FBQ2xFLGFBQVEsR0FBMkIsY0FBYyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUE7UUErRnBFLGVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxNQUE4QixFQUFVLEVBQUU7WUFDckUsT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQTtRQUNqQyxDQUFDLENBQUE7SUEvRjJDLENBQUM7SUFyQzdDLElBQWEsV0FBVyxDQUFDLEtBQXVCO1FBQzlDLElBQUksQ0FBQyxZQUFZO1lBQ2Ys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Z0JBUUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUtPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBS2EsV0FBVztzQkFBN0IsTUFBTTtnQkFFeUIsVUFBVTtzQkFBekMsU0FBUzt1QkFBQyxZQUFZO2dCQUVTLFVBQVU7c0JBQXpDLFNBQVM7dUJBQUMsWUFBWTtnQkFDVSxXQUFXO3NCQUEzQyxTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgRXZlbnRFbWl0dGVyLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQge1xuICBjcmVhdGVEcm9wZG93bixcbiAgQWJzdHJhY3REcm9wZG93bixcbiAgRHJvcGRvd25IYW5kbGVyLFxuICBEcm9wZG93bk9wdGlvbixcbiAgRXh0ZW5kZWREcm9wZG93bk9wdGlvbixcbiAgRWxlbWVudFByb3BzLFxuICBEcm9wZG93bkFyZ3MsXG4gIGRyb3Bkb3duVmFsdWVzLFxuICBEcm9wZG93blRleHRzLFxufSBmcm9tICdAc2ViZ3JvdXAvZXh0cmFjdCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdnLWRyb3Bkb3duJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2PlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJsYWJlbFwiXG4gICAgICAgICpuZ0lmPVwibGFiZWxcIlxuICAgICAgICBbaWRdPVwidG9nZ2xlcj8uYXR0cmlidXRlcz8uaWQgKyAnX2xhYmVsJ1wiXG4gICAgICAgID57eyBsYWJlbCB9fTwvc3BhblxuICAgICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiXG4gICAgICAgICAgbGFiZWwgPyB0b2dnbGVyPy5hdHRyaWJ1dGVzPy5pZCArICdfbGFiZWwnIDogbnVsbFxuICAgICAgICBcIlxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIlxuICAgICAgICAgIGZvcm1JbmZvPy50ZXh0Q29udGVudCAmJiAoZm9ybUluZm8/LnRleHRDb250ZW50Py5sZW5ndGggPz8gMCA+IDApXG4gICAgICAgICAgICA/IHRvZ2dsZXI/LmF0dHJpYnV0ZXM/LmlkICsgJ19pbmZvJ1xuICAgICAgICAgICAgOiBudWxsXG4gICAgICAgIFwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAjdG9nZ2xlclJlZlxuICAgICAgICBbaWRdPVwidG9nZ2xlcj8uYXR0cmlidXRlcz8uaWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cInRvZ2dsZXI/LmF0dHJpYnV0ZXM/LlsnYXJpYS1oYXNwb3B1cCddXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5bJ2FyaWEtZXhwYW5kZWQnXVwiXG4gICAgICAgIFthdHRyLmFyaWEtb3duc109XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5bJ2FyaWEtb3ducyddXCJcbiAgICAgICAgW3RhYmluZGV4XT1cInRvZ2dsZXI/LmF0dHJpYnV0ZXM/LnRhYkluZGV4XCJcbiAgICAgICAgW3N0eWxlXT1cInRvZ2dsZXI/LmF0dHJpYnV0ZXM/LnN0eWxlXCJcbiAgICAgICAgW2NsYXNzXT1cInRvZ2dsZXI/LmNsYXNzZXNcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlcj8udG9nZ2xlKClcIlxuICAgICAgICBbY2xhc3MuaXMtdmFsaWRdPVwidmFsaWRcIlxuICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJpbnZhbGlkXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4+e3tcbiAgICAgICAgICBkcm9wZG93bj8udGV4dHM/LnNlbGVjdCB8fCBkcm9wZG93bj8udGV4dHM/LnBsYWNlaG9sZGVyXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImZvcm0taW5mb1wiXG4gICAgICAgICNmb3JtSW5mb1xuICAgICAgICBbYXR0ci5pZF09XCJ0b2dnbGVyPy5hdHRyaWJ1dGVzPy5pZCArICdfaW5mbydcIlxuICAgICAgICA+PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2RhdGEtZm9ybS1pbmZvXVwiPjwvbmctY29udGVudFxuICAgICAgPjwvc3Bhbj5cbiAgICAgIDxkaXZcbiAgICAgICAgI2xpc3Rib3hSZWZcbiAgICAgICAgW2lkXT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LmlkXCJcbiAgICAgICAgW2F0dHIucm9sZV09XCJsaXN0Ym94Py5hdHRyaWJ1dGVzPy5yb2xlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1hY3RpdmVkZXNjZW5kYW50XT1cIlxuICAgICAgICAgIGxpc3Rib3g/LmF0dHJpYnV0ZXM/LlsnYXJpYS1hY3RpdmVkZXNjZW5kYW50J11cbiAgICAgICAgXCJcbiAgICAgICAgW3RhYmluZGV4XT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LnRhYkluZGV4XCJcbiAgICAgICAgW3N0eWxlXT1cImxpc3Rib3g/LmF0dHJpYnV0ZXM/LnN0eWxlXCJcbiAgICAgICAgW2NsYXNzXT1cImxpc3Rib3g/LmNsYXNzZXNcIlxuICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJjbG9zZSBtLTQgbS1zbS0yIGQtYmxvY2sgZC1zbS1ub25lXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlcj8uY2xvc2UoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj57eyBkcm9wZG93bj8udGV4dHM/LmNsb3NlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPHVsIHJvbGU9XCJsaXN0Ym94XCIgKm5nSWY9XCIhZHJvcGRvd24/LmlzTXVsdGlTZWxlY3RcIj5cbiAgICAgICAgICA8bGlcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZHJvcGRvd24/Lm9wdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlLZXlcIlxuICAgICAgICAgICAgW2lkXT1cIm9wdGlvbi5hdHRyaWJ1dGVzLmlkXCJcbiAgICAgICAgICAgIFthdHRyLnJvbGVdPVwib3B0aW9uLmF0dHJpYnV0ZXMucm9sZVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIm9wdGlvbi5hdHRyaWJ1dGVzWydhcmlhLXNlbGVjdGVkJ11cIlxuICAgICAgICAgICAgW3N0eWxlXT1cIm9wdGlvbi5hdHRyaWJ1dGVzLnN0eWxlXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJvcHRpb24uY2xhc3Nlc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlcj8uc2VsZWN0KG9wdGlvbilcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IG9wdGlvbltkcm9wZG93biEuZGlzcGxheV0gfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZHJvcGRvd24/LmlzTXVsdGlTZWxlY3RcIiBjbGFzcz1cInNnLWZpZWxkc2V0LWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxmaWVsZHNldFxuICAgICAgICAgICAgI2ZpZWxkc2V0UmVmXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImZpZWxkc2V0Py5hdHRyaWJ1dGVzPy5pZFwiXG4gICAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgICAgICB0YWJJbmRleD1cIi0xXCJcbiAgICAgICAgICAgIGFyaWEtbXVsdGlzZWxlY3RhYmxlPVwidHJ1ZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGxlZ2VuZCBjbGFzcz1cInNyLW9ubHlcIiBbaWRdPVwiZmllbGRzZXQ/LmF0dHJpYnV0ZXM/LmlkXCI+XG4gICAgICAgICAgICAgIE9wdGlvbnNcbiAgICAgICAgICAgIDwvbGVnZW5kPlxuICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgW2F0dHIucm9sZV09XCJvcHRpb24uYXR0cmlidXRlcy5yb2xlXCJcbiAgICAgICAgICAgICAgW2lkXT1cIm9wdGlvbi5hdHRyaWJ1dGVzLmlkXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJvcHRpb24uYXR0cmlidXRlc1snYXJpYS1zZWxlY3RlZCddXCJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cIm9wdGlvbi5jbGFzc2VzXCJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBkcm9wZG93bj8ub3B0aW9uczsgdHJhY2tCeTogdHJhY2tCeUtleVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVyPy5zZWxlY3Qob3B0aW9uLCBmYWxzZSlcIlxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cIm9wdGlvbi5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IG9wdGlvbltkcm9wZG93biEuZGlzcGxheV0gfX08L3NwYW4+XG4gICAgICAgICAgICAgIDxpPjwvaT5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9maWVsZHNldD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogTmdnRHJvcGRvd25Db21wb25lbnQsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmdnRHJvcGRvd25Db21wb25lbnRcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXNcbntcbiAgQElucHV0KCkgaWQ/OiBzdHJpbmdcbiAgQElucHV0KCkgdGV4dHM/OiBEcm9wZG93blRleHRzXG4gIEBJbnB1dCgpIGxvb3A/OiBib29sZWFuID0gZmFsc2VcbiAgQElucHV0KCkgZGlzcGxheT86IHN0cmluZ1xuICBASW5wdXQoKSBzZWxlY3RWYWx1ZT86IHN0cmluZ1xuICBASW5wdXQoKSB1c2VWYWx1ZT86IHN0cmluZ1xuXG4gIEBJbnB1dCgpIHNldCBtdWx0aVNlbGVjdCh2YWx1ZTogc3RyaW5nIHwgYm9vbGVhbikge1xuICAgIHRoaXMuX211bHRpU2VsZWN0ID1cbiAgICAgIHZhbHVlID09PSAnJyB8fCB2YWx1ZSA9PT0gJ3RydWUnIHx8IHZhbHVlLnRvU3RyaW5nKCkgPT09ICd0cnVlJyB8fCBmYWxzZVxuICB9XG4gIGdldCBtdWx0aVNlbGVjdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbXVsdGlTZWxlY3RcbiAgfVxuICBwcml2YXRlIF9tdWx0aVNlbGVjdCA9IGZhbHNlXG4gIEBJbnB1dCgpIGxhYmVsPzogc3RyaW5nXG4gIEBJbnB1dCgpIG9wdGlvbnM6IERyb3Bkb3duT3B0aW9uW10gPSBbXVxuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW5cbiAgQElucHV0KCkgaW52YWxpZD86IGJvb2xlYW5cblxuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVcbiAgfVxuICBASW5wdXQoKSBzZXQgdmFsdWUobmV3VmFsdWU6IGFueSkge1xuICAgIHRoaXMuc2V0U2VsZWN0aW9uQnlWYWx1ZShuZXdWYWx1ZSlcbiAgfVxuICBwcml2YXRlIF92YWx1ZTogYW55XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG5cbiAgQFZpZXdDaGlsZCgndG9nZ2xlclJlZicpIHB1YmxpYyB0b2dnbGVyUmVmPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cblxuICBAVmlld0NoaWxkKCdsaXN0Ym94UmVmJykgcHVibGljIGxpc3Rib3hSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICBAVmlld0NoaWxkKCdmaWVsZHNldFJlZicpIHB1YmxpYyBmaWVsZHNldFJlZj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG5cbiAgb25DaGFuZ2VGbj86ICh2YWx1ZTogYW55KSA9PiB2b2lkXG4gIG9uVG91Y2hlZEZuPzogYW55XG5cbiAgZHJvcGRvd24/OiBBYnN0cmFjdERyb3Bkb3duXG4gIGhhbmRsZXI/OiBEcm9wZG93bkhhbmRsZXJcbiAgdG9nZ2xlcj86IFBhcnRpYWw8RWxlbWVudFByb3BzPiA9IGRyb3Bkb3duVmFsdWVzLmVsZW1lbnRzPy50b2dnbGVyXG4gIGxpc3Rib3g/OiBQYXJ0aWFsPEVsZW1lbnRQcm9wcz4gPSBkcm9wZG93blZhbHVlcy5lbGVtZW50cz8ubGlzdGJveFxuICBmaWVsZHNldD86IFBhcnRpYWw8RWxlbWVudFByb3BzPiA9IGRyb3Bkb3duVmFsdWVzLmVsZW1lbnRzPy5maWVsZHNldFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50b2dnbGVyUmVmPy5uYXRpdmVFbGVtZW50ICYmIHRoaXMubGlzdGJveFJlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5oYW5kbGVyID0gY3JlYXRlRHJvcGRvd24oXG4gICAgICAgIHRoaXMucHJvcHMsXG4gICAgICAgIHRoaXMudG9nZ2xlclJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICB0aGlzLmxpc3Rib3hSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgdGhpcy5maWVsZHNldFJlZj8ubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKGRyb3Bkb3duKSA9PiB7XG4gICAgICAgICAgdGhpcy5kcm9wZG93biA9IGRyb3Bkb3duXG4gICAgICAgICAgdGhpcy50b2dnbGVyID0gZHJvcGRvd24uZWxlbWVudHMudG9nZ2xlclxuICAgICAgICAgIHRoaXMubGlzdGJveCA9IGRyb3Bkb3duLmVsZW1lbnRzLmxpc3Rib3hcbiAgICAgICAgICB0aGlzLmZpZWxkc2V0ID0gZHJvcGRvd24uZWxlbWVudHMuZmllbGRzZXRcblxuICAgICAgICAgIC8vIFRPRE86IHJlZmFjdG9yIHN0YXRlIGhhbmRsaW5nIHRvIG9ubHkgZW1pdCB2YWx1ZSBjaGFuZ2VzIHdoZW4gdmFsdWUgY2hhbmdlcyAobm90IG9uIHN0YXRlIGNoYW5nZSksIHBlcmhhcHMgdXNpbmcgcnhqcz9cbiAgICAgICAgICBpZiAoIWRyb3Bkb3duLmlzTXVsdGlTZWxlY3QpIHtcbiAgICAgICAgICAgIGxldCBzZWxlY3RlZE9wdGlvbiA9IHRoaXMuZHJvcGRvd24ub3B0aW9ucz8uZmluZChcbiAgICAgICAgICAgICAgKG9wdGlvbikgPT4gb3B0aW9uLnNlbGVjdGVkXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIChzZWxlY3RlZE9wdGlvbiAmJiAhdGhpcy5fdmFsdWUpIHx8XG4gICAgICAgICAgICAgIChzZWxlY3RlZE9wdGlvbiAmJlxuICAgICAgICAgICAgICAgIHNlbGVjdGVkT3B0aW9uW2Ryb3Bkb3duLnVzZVZhbHVlXSAhPT1cbiAgICAgICAgICAgICAgICAgIHRoaXMuX3ZhbHVlW2Ryb3Bkb3duLnVzZVZhbHVlXSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBjb25zdCB7IGF0dHJpYnV0ZXMsIGNsYXNzZXMsIGFjdGl2ZSwgc2VsZWN0ZWQsIC4uLmRhdGEgfSA9XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb25cbiAgICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb24gPSBkcm9wZG93bi5zZWxlY3RWYWx1ZVxuICAgICAgICAgICAgICAgID8gZGF0YVtkcm9wZG93bi5zZWxlY3RWYWx1ZV1cbiAgICAgICAgICAgICAgICA6IGRhdGFcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSBzZWxlY3RlZE9wdGlvblxuICAgICAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChzZWxlY3RlZE9wdGlvbilcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm4gJiYgdGhpcy5vbkNoYW5nZUZuKHNlbGVjdGVkT3B0aW9uKVxuICAgICAgICAgICAgICAgIHRoaXMub25Ub3VjaGVkRm4gJiYgdGhpcy5vblRvdWNoZWRGbigpXG4gICAgICAgICAgICAgIH0sIDApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gdGhpcy5kcm9wZG93bi5vcHRpb25zXG4gICAgICAgICAgICAgID8uZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5zZWxlY3RlZClcbiAgICAgICAgICAgICAgLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBhdHRyaWJ1dGVzLCBjbGFzc2VzLCBhY3RpdmUsIHNlbGVjdGVkLCAuLi5kYXRhIH0gPVxuICAgICAgICAgICAgICAgICAgb3B0aW9uXG4gICAgICAgICAgICAgICAgcmV0dXJuIGRyb3Bkb3duLnNlbGVjdFZhbHVlID8gZGF0YVtkcm9wZG93bi5zZWxlY3RWYWx1ZV0gOiBkYXRhXG4gICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgKHRoaXMuX3ZhbHVlICE9PSB1bmRlZmluZWQgfHwgc2VsZWN0ZWRPcHRpb24/Lmxlbmd0aCA+IDApICYmXG4gICAgICAgICAgICAgIHRoaXMuX3ZhbHVlICE9PSBbXSAmJlxuICAgICAgICAgICAgICBzZWxlY3RlZE9wdGlvbiAmJlxuICAgICAgICAgICAgICBKU09OLnN0cmluZ2lmeSh0aGlzLl92YWx1ZSkgIT09IEpTT04uc3RyaW5naWZ5KHNlbGVjdGVkT3B0aW9uKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gc2VsZWN0ZWRPcHRpb25cbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoc2VsZWN0ZWRPcHRpb24pXG4gICAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZUZuICYmIHRoaXMub25DaGFuZ2VGbihzZWxlY3RlZE9wdGlvbilcbiAgICAgICAgICAgICAgICB0aGlzLm9uVG91Y2hlZEZuICYmIHRoaXMub25Ub3VjaGVkRm4oKVxuICAgICAgICAgICAgICB9LCAwKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZXI/LmRlc3Ryb3koKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuaGFuZGxlciAmJlxuICAgICAgKGNoYW5nZXMuaWQgfHwgY2hhbmdlcy50ZXh0IHx8IGNoYW5nZXMubG9vcCB8fCBjaGFuZ2VzLm9wdGlvbnMpXG4gICAgKSB7XG4gICAgICB0aGlzLmhhbmRsZXIudXBkYXRlKHRoaXMucHJvcHMpXG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlRm4gPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkRm4gPSBmblxuICB9XG5cbiAgdHJhY2tCeUtleSA9IChpbmRleDogbnVtYmVyLCBvcHRpb246IEV4dGVuZGVkRHJvcGRvd25PcHRpb24pOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBvcHRpb25bJyddIHx8IG9wdGlvbi5rZXlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHByb3BzKCk6IERyb3Bkb3duQXJncyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLmlkIHx8IHRoaXMuZHJvcGRvd24/LmlkLFxuICAgICAgdGV4dHM6IHRoaXMudGV4dHMsXG4gICAgICB1c2VWYWx1ZTogdGhpcy51c2VWYWx1ZSxcbiAgICAgIGRpc3BsYXk6IHRoaXMuZGlzcGxheSxcbiAgICAgIHNlbGVjdFZhbHVlOiB0aGlzLnNlbGVjdFZhbHVlLFxuICAgICAgb3B0aW9uczogdGhpcy5vcHRpb25zLFxuICAgICAgbG9vcDogdGhpcy5sb29wLFxuICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICBtdWx0aVNlbGVjdDogdGhpcy5tdWx0aVNlbGVjdCxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFNlbGVjdGlvbkJ5VmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmICghdGhpcy5kcm9wZG93bj8uaXNNdWx0aVNlbGVjdCkge1xuICAgICAgaWYgKHRoaXMuX3ZhbHVlICE9PSB2YWx1ZSAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWVcbiAgICAgICAgY29uc3QgdmFsdWVLZXkgPSA8c3RyaW5nPnRoaXMuaGFuZGxlcj8uZHJvcGRvd24udXNlVmFsdWVcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLmhhbmRsZXI/LmRyb3Bkb3duPy5vcHRpb25zLmZpbmQoXG4gICAgICAgICAgKG9wdGlvbikgPT5cbiAgICAgICAgICAgIG9wdGlvblt2YWx1ZUtleV0gPT09IHZhbHVlW3ZhbHVlS2V5XSB8fCBvcHRpb25bdmFsdWVLZXldID09PSB2YWx1ZVxuICAgICAgICApXG4gICAgICAgIGlmIChzZWxlY3RlZCkgdGhpcy5oYW5kbGVyPy5zZWxlY3Qoc2VsZWN0ZWQpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -4,10 +4,10 @@ import { NggDropdownComponent } from './dropdown.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class NggDropdownModule {
6
6
  }
7
- NggDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- NggDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownModule, declarations: [NggDropdownComponent], imports: [CommonModule], exports: [NggDropdownComponent] });
9
- NggDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownModule, imports: [[CommonModule]] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggDropdownModule, decorators: [{
7
+ NggDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ NggDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownModule, declarations: [NggDropdownComponent], imports: [CommonModule], exports: [NggDropdownComponent] });
9
+ NggDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownModule, imports: [[CommonModule]] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggDropdownModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [NggDropdownComponent],
@@ -6,10 +6,10 @@ import { NggDatepickerModule } from './datepicker/datepicker.module';
6
6
  import * as i0 from "@angular/core";
7
7
  export class NggModule {
8
8
  }
9
- NggModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- NggModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggModule, imports: [CommonModule], exports: [NggSegmentedControlModule, NggDropdownModule, NggDatepickerModule] });
11
- NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggModule, imports: [[CommonModule], NggSegmentedControlModule, NggDropdownModule, NggDatepickerModule] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggModule, decorators: [{
9
+ NggModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ NggModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggModule, imports: [CommonModule], exports: [NggSegmentedControlModule, NggDropdownModule, NggDatepickerModule] });
11
+ NggModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggModule, imports: [[CommonModule], NggSegmentedControlModule, NggDropdownModule, NggDatepickerModule] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  declarations: [],
@@ -4,8 +4,8 @@ import * as i1 from "@angular/common";
4
4
  import * as i2 from "@angular/router";
5
5
  export class NggSegmentedControlComponent {
6
6
  }
7
- NggSegmentedControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- NggSegmentedControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: NggSegmentedControlComponent, selector: "ngg-segmented-control", inputs: { $controls: "$controls" }, ngImport: i0, template: `
7
+ NggSegmentedControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ NggSegmentedControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: NggSegmentedControlComponent, selector: "ngg-segmented-control", inputs: { $controls: "$controls" }, ngImport: i0, template: `
9
9
  <div class="group">
10
10
  <a
11
11
  *ngFor="let control of $controls | async"
@@ -16,7 +16,7 @@ NggSegmentedControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
16
16
  >
17
17
  </div>
18
18
  `, isInline: true, directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], pipes: { "async": i1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlComponent, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlComponent, decorators: [{
20
20
  type: Component,
21
21
  args: [{
22
22
  selector: 'ngg-segmented-control',
@@ -5,10 +5,10 @@ import { RouterModule } from '@angular/router';
5
5
  import * as i0 from "@angular/core";
6
6
  export class NggSegmentedControlModule {
7
7
  }
8
- NggSegmentedControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- NggSegmentedControlModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlModule, declarations: [NggSegmentedControlComponent], imports: [RouterModule, CommonModule], exports: [NggSegmentedControlComponent] });
10
- NggSegmentedControlModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlModule, imports: [[RouterModule, CommonModule]] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: NggSegmentedControlModule, decorators: [{
8
+ NggSegmentedControlModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ NggSegmentedControlModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlModule, declarations: [NggSegmentedControlComponent], imports: [RouterModule, CommonModule], exports: [NggSegmentedControlComponent] });
10
+ NggSegmentedControlModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlModule, imports: [[RouterModule, CommonModule]] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: NggSegmentedControlModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [NggSegmentedControlComponent],