@dereekb/dbx-form 10.2.0 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/calendar/lib/calendar.schedule.selection.cell.component.d.ts +0 -1
- package/calendar/lib/calendar.schedule.selection.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.days.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.dialog.button.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.popover.button.component.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.range.component.d.ts +2 -3
- package/calendar/lib/calendar.schedule.selection.store.provide.d.ts +1 -2
- package/calendar/lib/calendar.schedule.selection.toggle.button.component.d.ts +0 -1
- package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +2 -3
- package/esm2022/calendar/lib/calendar.module.mjs +6 -6
- package/esm2022/calendar/lib/calendar.schedule.selection.cell.component.mjs +10 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.component.mjs +49 -52
- package/esm2022/calendar/lib/calendar.schedule.selection.days.component.mjs +23 -27
- package/esm2022/calendar/lib/calendar.schedule.selection.days.form.component.mjs +5 -8
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.button.component.mjs +12 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.button.component.mjs +22 -24
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.content.component.mjs +4 -4
- package/esm2022/calendar/lib/calendar.schedule.selection.range.component.mjs +81 -86
- package/esm2022/calendar/lib/calendar.schedule.selection.store.mjs +123 -123
- package/esm2022/calendar/lib/calendar.schedule.selection.store.provide.mjs +8 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.toggle.button.component.mjs +39 -42
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +24 -31
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.module.mjs +6 -6
- package/esm2022/lib/form/action/form.action.directive.mjs +29 -20
- package/esm2022/lib/form/action/form.action.module.mjs +4 -4
- package/esm2022/lib/form/action/transition/form.action.transition.module.mjs +4 -4
- package/esm2022/lib/form/action/transition/form.action.transition.safety.directive.mjs +7 -18
- package/esm2022/lib/form/form.module.mjs +4 -4
- package/esm2022/lib/form/io/form.changes.directive.mjs +7 -13
- package/esm2022/lib/form/io/form.input.directive.mjs +7 -13
- package/esm2022/lib/form/io/form.io.module.mjs +4 -4
- package/esm2022/lib/form/io/form.loading.directive.mjs +9 -15
- package/esm2022/lib/form.module.mjs +4 -4
- package/esm2022/lib/formly/field/checklist/checklist.field.mjs +4 -4
- package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +23 -31
- package/esm2022/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +5 -4
- package/esm2022/lib/formly/field/checklist/checklist.item.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/component/component.field.component.mjs +4 -4
- package/esm2022/lib/formly/field/component/component.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/form.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/list/list.field.component.mjs +33 -36
- package/esm2022/lib/formly/field/selection/list/list.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +3 -3
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.directive.mjs +72 -74
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +21 -24
- package/esm2022/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +6 -9
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +27 -34
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.directive.mjs +32 -30
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +8 -11
- package/esm2022/lib/formly/field/selection/selection.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.component.mjs +143 -145
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/texteditor/texteditor.field.component.mjs +19 -24
- package/esm2022/lib/formly/field/texteditor/texteditor.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/array/array.field.component.mjs +22 -25
- package/esm2022/lib/formly/field/value/array/array.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/date/date.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/date/datetime.field.component.mjs +233 -236
- package/esm2022/lib/formly/field/value/date/datetime.field.service.mjs +7 -15
- package/esm2022/lib/formly/field/value/date/fixeddaterange.field.component.mjs +97 -101
- package/esm2022/lib/formly/field/value/number/number.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/phone/phone.field.component.mjs +15 -18
- package/esm2022/lib/formly/field/value/phone/phone.field.module.mjs +6 -6
- package/esm2022/lib/formly/field/value/text/text.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/value.module.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.component.mjs +39 -0
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.delegate.mjs +55 -0
- package/esm2022/lib/formly/field/wrapper/flex.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/form.wrapper.module.mjs +10 -10
- package/esm2022/lib/formly/field/wrapper/index.mjs +3 -3
- package/esm2022/lib/formly/field/wrapper/info.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/section.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/style.wrapper.component.mjs +8 -11
- package/esm2022/lib/formly/field/wrapper/subsection.wrapper.component.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/toggle.wrapper.component.mjs +15 -18
- package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +6 -9
- package/esm2022/lib/formly/field/wrapper/wrapper.key.mjs +2 -3
- package/esm2022/lib/formly/field/wrapper/wrapper.mjs +3 -3
- package/esm2022/lib/formly/form/form.form.module.mjs +4 -4
- package/esm2022/lib/formly/form/search.form.component.mjs +6 -9
- package/esm2022/lib/formly/formly.context.directive.mjs +5 -8
- package/esm2022/lib/formly/formly.context.mjs +10 -12
- package/esm2022/lib/formly/formly.directive.mjs +16 -25
- package/esm2022/lib/formly/formly.form.component.mjs +73 -77
- package/esm2022/lib/formly/formly.module.mjs +6 -6
- package/esm2022/lib/layout/form.layout.module.mjs +4 -4
- package/esm2022/lib/layout/form.spacer.component.mjs +4 -4
- package/esm2022/mapbox/lib/field/latlng/latlng.field.component.mjs +48 -57
- package/esm2022/mapbox/lib/field/latlng/latlng.field.marker.component.mjs +17 -20
- package/esm2022/mapbox/lib/field/latlng/latlng.module.mjs +6 -6
- package/esm2022/mapbox/lib/field/zoom/zoom.field.component.mjs +26 -32
- package/esm2022/mapbox/lib/field/zoom/zoom.module.mjs +6 -6
- package/esm2022/mapbox/lib/mapbox.module.mjs +4 -4
- package/fesm2022/dereekb-dbx-form-calendar.mjs +383 -407
- package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form-mapbox.mjs +96 -111
- package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form.mjs +1071 -1163
- package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
- package/lib/form/action/form.action.directive.d.ts +3 -3
- package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +3 -7
- package/lib/form/io/form.changes.directive.d.ts +2 -3
- package/lib/form/io/form.input.directive.d.ts +3 -4
- package/lib/form/io/form.loading.directive.d.ts +3 -4
- package/lib/formly/field/checklist/checklist.field.d.ts +0 -1
- package/lib/formly/field/checklist/checklist.item.field.component.d.ts +4 -6
- package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +0 -1
- package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +1 -2
- package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +0 -1
- package/lib/formly/field/selection/sourceselect/sourceselect.field.component.d.ts +2 -2
- package/lib/formly/field/texteditor/texteditor.field.component.d.ts +2 -4
- package/lib/formly/field/value/date/datetime.field.component.d.ts +1 -3
- package/lib/formly/field/value/date/datetime.field.service.d.ts +1 -4
- package/lib/formly/field/value/date/fixeddaterange.field.component.d.ts +2 -6
- package/lib/formly/field/wrapper/{expandable.wrapper.component.d.ts → expand.wrapper.component.d.ts} +4 -4
- package/lib/formly/field/wrapper/{expandable.wrapper.delegate.d.ts → expand.wrapper.delegate.d.ts} +7 -7
- package/lib/formly/field/wrapper/form.wrapper.module.d.ts +1 -1
- package/lib/formly/field/wrapper/index.d.ts +2 -2
- package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +4 -4
- package/lib/formly/field/wrapper/wrapper.d.ts +1 -1
- package/lib/formly/field/wrapper/wrapper.key.d.ts +1 -1
- package/lib/formly/formly.directive.d.ts +0 -1
- package/lib/formly/formly.form.component.d.ts +2 -3
- package/mapbox/esm2022/lib/field/latlng/latlng.field.component.mjs +48 -57
- package/mapbox/esm2022/lib/field/latlng/latlng.field.marker.component.mjs +17 -20
- package/mapbox/esm2022/lib/field/latlng/latlng.module.mjs +6 -6
- package/mapbox/esm2022/lib/field/zoom/zoom.field.component.mjs +26 -32
- package/mapbox/esm2022/lib/field/zoom/zoom.module.mjs +6 -6
- package/mapbox/esm2022/lib/mapbox.module.mjs +4 -4
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs +96 -111
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/mapbox/lib/field/latlng/latlng.field.component.d.ts +4 -6
- package/mapbox/lib/field/latlng/latlng.field.marker.component.d.ts +1 -2
- package/mapbox/lib/field/zoom/zoom.field.component.d.ts +2 -3
- package/mapbox/package.json +1 -1
- package/package.json +1 -1
- package/esm2022/lib/formly/field/wrapper/expandable.wrapper.component.mjs +0 -39
- package/esm2022/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +0 -58
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CompactContextStore, mapCompactModeObs } from '@dereekb/dbx-web';
|
|
2
|
-
import { Component, Injector, NgZone,
|
|
2
|
+
import { Component, Injector, NgZone, inject } from '@angular/core';
|
|
3
3
|
import { FieldType } from '@ngx-formly/material';
|
|
4
4
|
import { skip, first, BehaviorSubject, filter, shareReplay, startWith, switchMap, map, throttleTime, skipWhile, of, distinctUntilChanged } from 'rxjs';
|
|
5
5
|
import { asObservableFromGetter, filterMaybe, SubscriptionObject } from '@dereekb/rxjs';
|
|
@@ -8,16 +8,14 @@ import { GeolocationService } from '@ng-web-apis/geolocation';
|
|
|
8
8
|
import { DbxMapboxInjectionStore, DbxMapboxMapStore, provideMapboxStoreIfParentIsUnavailable } from '@dereekb/dbx-web/mapbox';
|
|
9
9
|
import { DbxFormMapboxLatLngFieldMarkerComponent } from './latlng.field.marker.component';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@
|
|
12
|
-
import * as i2 from "@
|
|
13
|
-
import * as i3 from "@
|
|
14
|
-
import * as i4 from "@
|
|
15
|
-
import * as i5 from "@angular/
|
|
16
|
-
import * as i6 from "@angular/material/
|
|
17
|
-
import * as i7 from "@angular/
|
|
18
|
-
import * as i8 from "
|
|
19
|
-
import * as i9 from "@angular/material/form-field";
|
|
20
|
-
import * as i10 from "ngx-mapbox-gl";
|
|
11
|
+
import * as i1 from "@angular/common";
|
|
12
|
+
import * as i2 from "@angular/material/icon";
|
|
13
|
+
import * as i3 from "@angular/material/button";
|
|
14
|
+
import * as i4 from "@dereekb/dbx-web/mapbox";
|
|
15
|
+
import * as i5 from "@angular/forms";
|
|
16
|
+
import * as i6 from "@angular/material/input";
|
|
17
|
+
import * as i7 from "@angular/material/form-field";
|
|
18
|
+
import * as i8 from "ngx-mapbox-gl";
|
|
21
19
|
export const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_FIELD_INJECTION_KEY = 'DbxFormMapboxLatLngFieldComponent';
|
|
22
20
|
export const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG = {
|
|
23
21
|
icon: 'pin_drop'
|
|
@@ -29,42 +27,39 @@ export const DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG = {
|
|
|
29
27
|
</button>
|
|
30
28
|
*/
|
|
31
29
|
export class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
this.zoom$ = this._zoom.asObservable();
|
|
66
|
-
this.markerConfig$ = this._markerConfig.asObservable().pipe(switchMap((x) => x), shareReplay(1));
|
|
67
|
-
}
|
|
30
|
+
_geolocationService = inject(GeolocationService);
|
|
31
|
+
compact = inject(CompactContextStore, { optional: true });
|
|
32
|
+
dbxMapboxInjectionStore = inject(DbxMapboxInjectionStore, { optional: true });
|
|
33
|
+
dbxMapboxMapStore = inject(DbxMapboxMapStore);
|
|
34
|
+
ngZone = inject(NgZone);
|
|
35
|
+
injector = inject(Injector);
|
|
36
|
+
_latLngStringFunction;
|
|
37
|
+
_latLngPointFunction;
|
|
38
|
+
compactClass$ = mapCompactModeObs(this.compact?.mode$, {
|
|
39
|
+
compact: 'dbx-mapbox-input-field-compact'
|
|
40
|
+
});
|
|
41
|
+
_useCurrentLocationDisabled = new BehaviorSubject(false);
|
|
42
|
+
useCurrentLocationDisabled$ = this._useCurrentLocationDisabled.asObservable();
|
|
43
|
+
_sub = new SubscriptionObject();
|
|
44
|
+
_geoSub = new SubscriptionObject();
|
|
45
|
+
_centerSub = new SubscriptionObject();
|
|
46
|
+
_flyToCenterSub = new SubscriptionObject();
|
|
47
|
+
_clickSub = new SubscriptionObject();
|
|
48
|
+
_zoom = new BehaviorSubject(12);
|
|
49
|
+
_markerConfig = new BehaviorSubject(of(DEFAULT_DBX_FORM_MAPBOX_LAT_LNG_MARKER_CONFIG));
|
|
50
|
+
_formControlObs = new BehaviorSubject(undefined);
|
|
51
|
+
formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
52
|
+
value$ = this.formControl$.pipe(switchMap((control) => control.valueChanges.pipe(startWith(control.value))), shareReplay(1));
|
|
53
|
+
latLng$ = this.value$.pipe(filterMaybe(), map((x) => this._latLngPointFunction(x)), distinctUntilChanged(isSameLatLngPoint), shareReplay(1));
|
|
54
|
+
nonZeroLatLng$ = this.latLng$.pipe(
|
|
55
|
+
/**
|
|
56
|
+
* Center observable passed to the store. Do not pass invalid points.
|
|
57
|
+
*
|
|
58
|
+
* Also skip any initial 0,0 values so the center doesn't potentially "whip" from 0,0 to a final loaded value.
|
|
59
|
+
*/
|
|
60
|
+
skipWhile(isDefaultLatLngPoint), filter(isValidLatLngPoint));
|
|
61
|
+
zoom$ = this._zoom.asObservable();
|
|
62
|
+
markerConfig$ = this._markerConfig.asObservable().pipe(switchMap((x) => x), shareReplay(1));
|
|
68
63
|
get zoom() {
|
|
69
64
|
return Math.min(this.field.props.zoom || 12, 18);
|
|
70
65
|
}
|
|
@@ -183,7 +178,7 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
|
183
178
|
this.dbxMapboxMapStore.easeTo(this.nonZeroLatLng$.pipe(first(), map((x) => ({ center: x }))));
|
|
184
179
|
}
|
|
185
180
|
useCurrentLocation() {
|
|
186
|
-
this._geoSub.subscription = this.
|
|
181
|
+
this._geoSub.subscription = this._geolocationService.pipe(first()).subscribe({
|
|
187
182
|
next: (position) => {
|
|
188
183
|
if (position) {
|
|
189
184
|
const { latitude: lat, longitude: lng } = position.coords;
|
|
@@ -203,8 +198,8 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
|
203
198
|
this.formControl.markAsTouched();
|
|
204
199
|
this.formControl.markAsDirty();
|
|
205
200
|
}
|
|
206
|
-
static
|
|
207
|
-
static
|
|
201
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
202
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormMapboxLatLngFieldComponent, selector: "ng-component", providers: [provideMapboxStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
|
|
208
203
|
<div class="dbx-mapbox-input-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
|
|
209
204
|
<div *ngIf="showMap" class="dbx-mapbox-input-field-map">
|
|
210
205
|
<mgl-map dbxMapboxMap>
|
|
@@ -222,7 +217,7 @@ export class DbxFormMapboxLatLngFieldComponent extends FieldType {
|
|
|
222
217
|
</mat-form-field>
|
|
223
218
|
</div>
|
|
224
219
|
</div>
|
|
225
|
-
`, isInline: true, styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"], dependencies: [{ kind: "directive", type:
|
|
220
|
+
`, isInline: true, styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.DbxMapboxMapDirective, selector: "[dbxMapboxMap]" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i8.MapComponent, selector: "mgl-map", inputs: ["accessToken", "collectResourceTiming", "crossSourceCollisions", "customMapboxApiUrl", "fadeDuration", "hash", "refreshExpiredTiles", "failIfMajorPerformanceCaveat", "bearingSnap", "interactive", "pitchWithRotate", "clickTolerance", "attributionControl", "logoPosition", "maxTileCacheSize", "localIdeographFontFamily", "preserveDrawingBuffer", "trackResize", "transformRequest", "bounds", "antialias", "locale", "cooperativeGestures", "minZoom", "maxZoom", "minPitch", "maxPitch", "scrollZoom", "dragRotate", "touchPitch", "touchZoomRotate", "doubleClickZoom", "keyboard", "dragPan", "boxZoom", "style", "center", "maxBounds", "zoom", "bearing", "pitch", "fitBoundsOptions", "renderWorldCopies", "projection", "movingMethod", "movingOptions", "fitBounds", "fitScreenCoordinates", "centerWithPanTo", "panToOptions", "cursorStyle"], outputs: ["mapResize", "mapRemove", "mapMouseDown", "mapMouseUp", "mapMouseMove", "mapClick", "mapDblClick", "mapMouseOver", "mapMouseOut", "mapContextMenu", "mapTouchStart", "mapTouchEnd", "mapTouchMove", "mapTouchCancel", "mapWheel", "moveStart", "move", "moveEnd", "mapDragStart", "mapDrag", "mapDragEnd", "zoomStart", "zoomEvt", "zoomEnd", "rotateStart", "rotate", "rotateEnd", "pitchStart", "pitchEvt", "pitchEnd", "boxZoomStart", "boxZoomEnd", "boxZoomCancel", "webGlContextLost", "webGlContextRestored", "mapLoad", "mapCreate", "idle", "render", "mapError", "data", "styleData", "sourceData", "dataLoading", "styleDataLoading", "sourceDataLoading", "styleImageMissing", "resize", "remove", "mouseDown", "mouseUp", "mouseMove", "click", "dblClick", "mouseOver", "mouseOut", "contextMenu", "touchStart", "touchEnd", "touchMove", "touchCancel", "wheel", "dragStart", "drag", "dragEnd", "load", "error"] }, { kind: "component", type: i8.MarkerComponent, selector: "mgl-marker", inputs: ["offset", "anchor", "clickTolerance", "feature", "lngLat", "draggable", "popupShown", "className", "pitchAlignment", "rotationAlignment"], outputs: ["markerDragStart", "markerDragEnd", "markerDrag", "dragStart", "dragEnd", "drag"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
226
221
|
}
|
|
227
222
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldComponent, decorators: [{
|
|
228
223
|
type: Component,
|
|
@@ -245,9 +240,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
245
240
|
</div>
|
|
246
241
|
</div>
|
|
247
242
|
`, providers: [provideMapboxStoreIfParentIsUnavailable()], styles: [".dbx-mapbox-input-field .dbx-mapbox-input-field-map{height:220px;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-map mgl-map{height:100%;width:100%}.dbx-mapbox-input-field .dbx-mapbox-input-field-input{display:flex;align-items:center}.dbx-mapbox-input-field .dbx-mapbox-input-field-input .dbx-mapbox-input-field-input-field{width:calc(100% - 40px)}.dbx-mapbox-input-field-compact .dbx-latlng-field-input{min-height:120px;height:300px;max-height:calc(var(--vh100) * .5)}\n"] }]
|
|
248
|
-
}]
|
|
249
|
-
type: Optional
|
|
250
|
-
}] }, { type: i2.DbxMapboxInjectionStore, decorators: [{
|
|
251
|
-
type: Optional
|
|
252
|
-
}] }, { type: i3.GeolocationService }, { type: i2.DbxMapboxMapStore }, { type: i0.NgZone }, { type: i0.Injector }]; } });
|
|
253
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBYyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuSyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFzQyxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQXVFLG9CQUFvQixFQUFnQixtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBdUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL08sT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUErRCx1Q0FBdUMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzNMLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7Ozs7QUFFMUYsTUFBTSxDQUFDLE1BQU0sbURBQW1ELEdBQUcsbUNBQW1DLENBQUM7QUFFdkcsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQWlDO0lBQ3pGLElBQUksRUFBRSxVQUFVO0NBQ2pCLENBQUM7QUFzREY7Ozs7O0dBS0c7QUF5QkgsTUFBTSxPQUFPLGlDQUE2SCxTQUFRLFNBQTZCO0lBa0Q3SztJQUNFLEVBQUU7SUFDbUIsT0FBNEIsRUFDNUIsdUJBQWdELEVBQ3BELFlBQWdDLEVBQ3hDLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ2QsUUFBa0I7UUFFM0IsS0FBSyxFQUFFLENBQUM7UUFQYSxZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUM1Qiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ3BELGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUN4QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBckRwQixrQkFBYSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFO1lBQzlELE9BQU8sRUFBRSxnQ0FBZ0M7U0FDMUMsQ0FBQyxDQUFDO1FBRUssZ0NBQTJCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakUsZ0NBQTJCLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRS9FLFNBQUksR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDaEMsWUFBTyxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUNuQyxlQUFVLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQzNDLGNBQVMsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDckMsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFrQixFQUFFLENBQUMsQ0FBQztRQUNqRCxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFtRCxFQUFFLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxDQUFDO1FBRXpJLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQXlCLFNBQVMsQ0FBQyxDQUFDO1FBQ3hFLGlCQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUV4RCxXQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ3RDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQzNFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sWUFBTyxHQUE0QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDMUQsV0FBVyxFQUFFLEVBQ2IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDeEMsb0JBQW9CLENBQWMsaUJBQWlCLENBQUMsRUFDcEQsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFFTyxtQkFBYyxHQUE0QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUk7UUFDbEU7Ozs7V0FJRztRQUNILFNBQVMsQ0FBYyxvQkFBb0IsQ0FBQyxFQUM1QyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FDM0IsQ0FBQztRQUVPLFVBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQzdELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ25CLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBWUYsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBYSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxJQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsdUJBQXVCLElBQUksSUFBSSxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLHdCQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHdCQUF3QixJQUFJLEtBQUssQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsSUFBSSxJQUFJLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsS0FBSyxLQUFLLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksMEJBQTBCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLDJCQUEyQixDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sTUFBTSxpQkFBaUIsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsSUFBSSxJQUFJLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLFFBQVEsSUFBSSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLGlCQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQy9QLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxtQkFBbUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRW5FLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0IsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDdEY7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsbUNBQW1DO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRTNDLHdCQUF3QjtZQUN4QixJQUFJLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFO2dCQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7b0JBQzlLLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDckIsQ0FBQyxDQUFDLENBQUM7YUFDSjtTQUNGO2FBQU07WUFDTCw2Q0FBNkM7WUFDN0MsSUFBSSxJQUFJLENBQUMsdUJBQXVCLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQzNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO3dCQUNyRSxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFOzRCQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0NBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7NEJBQ3hCLENBQUMsQ0FBQyxDQUFDO3lCQUNKO29CQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFFRCwrQ0FBK0M7WUFDL0MsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQy9FLElBQUksQ0FBQyxFQUFFLElBQUksS0FBSyxPQUFPLEVBQUU7d0JBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUN6QjtnQkFDSCxDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDNUI7UUFFRCxvREFBb0Q7UUFDcEQsSUFBSSxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDaEMsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksRUFBRTtnQkFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ3BIO1lBRUQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGtCQUFrQixDQUFDO2dCQUM5QyxHQUFHLEVBQUUsSUFBSSxDQUFDLGVBQWUsSUFBSSxtREFBbUQ7Z0JBQ2hGLGVBQWUsRUFBRTtvQkFDZixjQUFjLEVBQUUsdUNBQXVDO29CQUN2RCxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7aUJBQzVFO2FBQ0YsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3RCLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQW1CLENBQUEsQ0FBQyxDQUM1QyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3BFLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNqQixJQUFJLFFBQVEsRUFBRTtvQkFDWixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztvQkFDMUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO2lCQUM3QjtZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxFQUFFO2dCQUNWLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUMsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxlQUFlLENBQUMsTUFBYztRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBMkI7UUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqQyxDQUFDOytHQXZPVSxpQ0FBaUM7bUdBQWpDLGlDQUFpQyx1Q0FIakMsQ0FBQyx1Q0FBdUMsRUFBRSxDQUFDLGlEQW5CNUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVDs7NEZBSVUsaUNBQWlDO2tCQXZCN0MsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JULGFBQ1UsQ0FBQyx1Q0FBdUMsRUFBRSxDQUFDOzswQkF1RG5ELFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBhY3RDb250ZXh0U3RvcmUsIG1hcENvbXBhY3RNb2RlT2JzIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yLCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnLCBGb3JtbHlGaWVsZFByb3BzIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XG5pbXBvcnQgeyBza2lwLCBmaXJzdCwgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgbWFwLCBPYnNlcnZhYmxlLCB0aHJvdHRsZVRpbWUsIHNraXBXaGlsZSwgb2YsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBhc09ic2VydmFibGVGcm9tR2V0dGVyLCBmaWx0ZXJNYXliZSwgT2JzZXJ2YWJsZUZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dCwgU3Vic2NyaXB0aW9uT2JqZWN0IH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSwgTGF0TG5nUG9pbnQsIExhdExuZ1BvaW50RnVuY3Rpb25Db25maWcsIExhdExuZ1N0cmluZ0Z1bmN0aW9uLCBsYXRMbmdTdHJpbmdGdW5jdGlvbiwgTWlsbGlzZWNvbmRzLCBsYXRMbmdQb2ludEZ1bmN0aW9uLCBpc0RlZmF1bHRMYXRMbmdQb2ludCwgaXNWYWxpZExhdExuZ1BvaW50LCBMYXRMbmdQb2ludEZ1bmN0aW9uLCBpc1NhbWVMYXRMbmdQb2ludCB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgR2VvbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnQG5nLXdlYi1hcGlzL2dlb2xvY2F0aW9uJztcbmltcG9ydCB7IE1hcmtlciB9IGZyb20gJ21hcGJveC1nbCc7XG5pbXBvcnQgeyBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSwgRGJ4TWFwYm94TWFwU3RvcmUsIERieE1hcGJveE1hcmtlckRpc3BsYXlDb25maWcsIE1hcGJveEVhc2VUbywgTWFwYm94Wm9vbUxldmVsLCBwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViL21hcGJveCc7XG5pbXBvcnQgeyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQgfSBmcm9tICcuL2xhdGxuZy5maWVsZC5tYXJrZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSA9ICdEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9EQlhfRk9STV9NQVBCT1hfTEFUX0xOR19NQVJLRVJfQ09ORklHOiBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnID0ge1xuICBpY29uOiAncGluX2Ryb3AnXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIFdoZXRoZXIgb3Igbm90IHRoZSBzaG93IHRoZSBtYXAuIElmIHRoZSBtYXAgaXMgbm90IHNob3duLCByZWxpZXMgb24gdGhlIGNlbnRlciBvZiB0aGUgcGFyZW50IG1hcCB0byBkZXRlcm1pbmUgcG9zaXRpb24uXG4gICAqXG4gICAqIERlZmF1bHRzIHRvIHRydWUuXG4gICAqXG4gICAqIENhc2VzIHdoZXJlIHRoaXMgd291bGQgYmUgc2V0IGZhbHNlIGlzIGlmIGFub3RoZXIgbWFwIGlzIGJlaW5nIHVzZWQuXG4gICAqL1xuICBzaG93TWFwPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGRpc3BsYXkgdGhlIGNlbnRlciBidXR0b24uIElzIHNldCB0byBmYWxzZSBpZiBzZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyBpcyB0cnVlLlxuICAgKi9cbiAgc2hvd0NlbnRlckJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzZXQgdGhlIGNlbnRlciBvZiB0aGUgbWFwIG9uIHRoZSBsb2NhdGlvbiB3aGVuIHNldC4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIHNldENlbnRlck9uTG9jYXRpb25TZXQ/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gZW5hYmxlIGRyYWdnaW5nIHRoZSBtYXAgdG8gc2VsZWN0IHRoZSBsb2NhdGlvbi4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICogT25seSBhcHBsaWNhYmxlIHdoZW4gc2hvd01hcCBpcyBmYWxzZS5cbiAgICovXG4gIHNlbGVjdExvY2F0aW9uT25NYXBEcmFnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSBjbGlja2luZyB0aGUgbWFwIHRvIHNlbGVjdCB0aGUgbG9jYXRpb24uIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKlxuICAgKiBPbmx5IGFwcGxpY2FibGUgd2hlbiBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIChPcHRpb25hbCkgWm9vbSB0byBzdGFydCB0aGUgbWFwIGF0LiBJZ25vcmVkIGlmIHRoZSBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgem9vbT86IE1hcGJveFpvb21MZXZlbDtcbiAgLyoqXG4gICAqIFRpbWUgdW50aWwgcmVjZW50ZXJpbmcgb24gdGhlIG1hcmtlci4gSWYgdGhlIHRpbWUgaXMgMCB0aGVuIHRoZSByZWNlbnRlcmluZyBpcyBkaXNhYmxlZC5cbiAgICovXG4gIHJlY2VudGVyVGltZT86IE1pbGxpc2Vjb25kcztcbiAgbGF0TG5nQ29uZmlnPzogTGF0TG5nUG9pbnRGdW5jdGlvbkNvbmZpZztcbiAgLyoqXG4gICAqIFVuaXF1ZSBpbmplY3Rpb24ga2V5LlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgdGhlIGRlZmF1bHQga2V5IHdpbGwgYmUgdXNlZC5cbiAgICpcbiAgICogSWYgZmFsc2UgaXMgcGFzc2VkLCB0aGUgbWFya2VyIHdpbGwgbm90IGJlIGNvbmZpZ3VyZWQgaW4gdGhlIGluamVjdGlvbiBzdG9yZS5cbiAgICovXG4gIG1hcEluamVjdGlvbktleT86IE1heWJlPHN0cmluZyB8IGZhbHNlPjtcbiAgLyoqXG4gICAqIE1hcmtlciBjb25maWd1cmF0aW9uIG9yIGZhY3RvcnkuIElmIGZhbHNlIGlzIHBhc3NlZCwgdGhlIG1hcmtlciB3aWxsIG5vdCBiZSBkaXNwbGF5ZWQuXG4gICAqL1xuICBtYXJrZXJDb25maWc/OiBmYWxzZSB8IE9ic2VydmFibGVGYWN0b3J5V2l0aFJlcXVpcmVkSW5wdXQ8RGJ4TWFwYm94TWFya2VyRGlzcGxheUNvbmZpZyB8IGZhbHNlLCBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ+O1xufVxuXG4vKlxuICBUT0RPOiBSZS1hZGQgbWVudSBmb3IgcGlja2luZyBhIG5ldyBsb2NhdGlvbiwgaW5jbHVkaW5nIHVzaW5nIHRoZSBjdXJyZW50IGxvY2F0aW9uLlxuIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ1c2VDdXJyZW50TG9jYXRpb24oKVwiIFtkaXNhYmxlZF09XCJpc1JlYWRvbmx5T3JEaXNhYmxlZCB8fCAodXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgPG1hdC1pY29uPm15X2xvY2F0aW9uPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gKi9cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtaW5wdXQtZmllbGRcIiBbbmdDbGFzc109XCIoY29tcGFjdENsYXNzJCB8IGFzeW5jKSA/PyAnJ1wiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd01hcFwiIGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1tYXBcIj5cbiAgICAgICAgPG1nbC1tYXAgZGJ4TWFwYm94TWFwPlxuICAgICAgICAgIDxtZ2wtbWFya2VyIFtsbmdMYXRdPVwiKGxhdExuZyQgfCBhc3luYykgfHwgWzAsIDBdXCIgW2RyYWdnYWJsZV09XCIhaXNSZWFkb25seU9yRGlzYWJsZWRcIiAobWFya2VyRHJhZ0VuZCk9XCJvbk1hcmtlckRyYWdFbmQoJGV2ZW50KVwiPjwvbWdsLW1hcmtlcj5cbiAgICAgICAgPC9tZ2wtbWFwPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1pbnB1dFwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0NlbnRlckJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZmx5VG9NYXJrZXIoKVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5teV9sb2NhdGlvbjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkLWlucHV0LWZpZWxkXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5Db29yZGluYXRlczwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIC8+XG4gICAgICAgICAgPG1hdC1oaW50IGNsYXNzPVwiZGJ4LWhpbnQgZGJ4LXdhcm5cIiAqbmdJZj1cInVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCB8IGFzeW5jXCI+Q291bGQgbm90IGFjY2VzcyB5b3VyIGN1cnJlbnQgbG9jYXRpb24uPC9tYXQtaGludD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBwcm92aWRlcnM6IFtwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUoKV0sXG4gIHN0eWxlVXJsczogWycuLi9tYXBib3guZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ8VCBleHRlbmRzIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzID0gRGJ4Rm9ybU1hcGJveExhdExuZ0NvbXBvbmVudEZpZWxkUHJvcHM+IGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxUPj4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2xhdExuZ1N0cmluZ0Z1bmN0aW9uITogTGF0TG5nU3RyaW5nRnVuY3Rpb247XG4gIHByaXZhdGUgX2xhdExuZ1BvaW50RnVuY3Rpb24hOiBMYXRMbmdQb2ludEZ1bmN0aW9uO1xuXG4gIHJlYWRvbmx5IGNvbXBhY3RDbGFzcyQgPSBtYXBDb21wYWN0TW9kZU9icyh0aGlzLmNvbXBhY3Q/Lm1vZGUkLCB7XG4gICAgY29tcGFjdDogJ2RieC1tYXBib3gtaW5wdXQtZmllbGQtY29tcGFjdCdcbiAgfSk7XG5cbiAgcHJpdmF0ZSBfdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQkID0gdGhpcy5fdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9nZW9TdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX2NlbnRlclN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfZmx5VG9DZW50ZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX2NsaWNrU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF96b29tID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXBib3hab29tTGV2ZWw+KDEyKTtcbiAgcHJpdmF0ZSBfbWFya2VyQ29uZmlnID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPYnNlcnZhYmxlPERieE1hcGJveE1hcmtlckRpc3BsYXlDb25maWcgfCBmYWxzZT4+KG9mKERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfTUFSS0VSX0NPTkZJRykpO1xuXG4gIHByaXZhdGUgX2Zvcm1Db250cm9sT2JzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxBYnN0cmFjdENvbnRyb2w+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBmb3JtQ29udHJvbCQgPSB0aGlzLl9mb3JtQ29udHJvbE9icy5waXBlKGZpbHRlck1heWJlKCkpO1xuXG4gIHJlYWRvbmx5IHZhbHVlJCA9IHRoaXMuZm9ybUNvbnRyb2wkLnBpcGUoXG4gICAgc3dpdGNoTWFwKChjb250cm9sKSA9PiBjb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aChjb250cm9sLnZhbHVlKSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgbGF0TG5nJDogT2JzZXJ2YWJsZTxMYXRMbmdQb2ludD4gPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgIGZpbHRlck1heWJlKCksXG4gICAgbWFwKCh4KSA9PiB0aGlzLl9sYXRMbmdQb2ludEZ1bmN0aW9uKHgpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZDxMYXRMbmdQb2ludD4oaXNTYW1lTGF0TG5nUG9pbnQpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgbm9uWmVyb0xhdExuZyQ6IE9ic2VydmFibGU8TGF0TG5nUG9pbnQ+ID0gdGhpcy5sYXRMbmckLnBpcGUoXG4gICAgLyoqXG4gICAgICogQ2VudGVyIG9ic2VydmFibGUgcGFzc2VkIHRvIHRoZSBzdG9yZS4gRG8gbm90IHBhc3MgaW52YWxpZCBwb2ludHMuXG4gICAgICpcbiAgICAgKiBBbHNvIHNraXAgYW55IGluaXRpYWwgMCwwIHZhbHVlcyBzbyB0aGUgY2VudGVyIGRvZXNuJ3QgcG90ZW50aWFsbHkgXCJ3aGlwXCIgZnJvbSAwLDAgdG8gYSBmaW5hbCBsb2FkZWQgdmFsdWUuXG4gICAgICovXG4gICAgc2tpcFdoaWxlPExhdExuZ1BvaW50Pihpc0RlZmF1bHRMYXRMbmdQb2ludCksXG4gICAgZmlsdGVyKGlzVmFsaWRMYXRMbmdQb2ludClcbiAgKTtcblxuICByZWFkb25seSB6b29tJCA9IHRoaXMuX3pvb20uYXNPYnNlcnZhYmxlKCk7XG4gIHJlYWRvbmx5IG1hcmtlckNvbmZpZyQgPSB0aGlzLl9tYXJrZXJDb25maWcuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLy9cbiAgICBAT3B0aW9uYWwoKSByZWFkb25seSBjb21wYWN0OiBDb21wYWN0Q29udGV4dFN0b3JlLFxuICAgIEBPcHRpb25hbCgpIHJlYWRvbmx5IGRieE1hcGJveEluamVjdGlvblN0b3JlOiBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGdlb2xvY2F0aW9uJDogR2VvbG9jYXRpb25TZXJ2aWNlLFxuICAgIHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlOiBEYnhNYXBib3hNYXBTdG9yZSxcbiAgICByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldCB6b29tKCk6IE1hcGJveFpvb21MZXZlbCB7XG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuZmllbGQucHJvcHMuem9vbSB8fCAxMiwgMTgpO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5rZXkgYXMgc3RyaW5nO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLmZvcm0gYXMgRm9ybUdyb3VwO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzPy5sYWJlbDtcbiAgfVxuXG4gIGdldCBkZXNjcmlwdGlvbigpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kZXNjcmlwdGlvbjtcbiAgfVxuXG4gIGdldCBpc1JlYWRvbmx5T3JEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IHNob3dNYXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucHJvcHMuc2hvd01hcCA/PyB0cnVlO1xuICB9XG5cbiAgZ2V0IHNlbGVjdExvY2F0aW9uT25NYXBEcmFnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnID8/IHRydWU7XG4gIH1cblxuICBnZXQgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljayA/PyBmYWxzZTtcbiAgfVxuXG4gIGdldCBzZXRDZW50ZXJPbkxvY2F0aW9uU2V0KCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNldENlbnRlck9uTG9jYXRpb25TZXQgPz8gdHJ1ZTtcbiAgfVxuXG4gIGdldCBzaG93Q2VudGVyQnV0dG9uKCkge1xuICAgIHJldHVybiAhdGhpcy5zZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyAmJiB0aGlzLnByb3BzLnNob3dDZW50ZXJCdXR0b24gIT09IGZhbHNlO1xuICB9XG5cbiAgZ2V0IHJlY2VudGVyVGltZSgpOiBNaWxsaXNlY29uZHMge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnJlY2VudGVyVGltZSB8fCAxMCAqIDEwMDA7XG4gIH1cblxuICBnZXQgdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IG1hcEluamVjdGlvbktleSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5tYXBJbmplY3Rpb25LZXk7XG4gIH1cblxuICBnZXQgbWFya2VyQ29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLm1hcmtlckNvbmZpZztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGxhdExuZ1BvaW50Q29uZmlnID0geyAuLi50aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZywgd3JhcDogdGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWc/LndyYXAgfHwgZmFsc2UsIHZhbGlkYXRlOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8udmFsaWRhdGUgfHwgZmFsc2UsIHByZWNpc2lvblJvdW5kaW5nOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8ucHJlY2lzaW9uUm91bmRpbmcgPz8gJ3JvdW5kJyB9O1xuICAgIHRoaXMuX2xhdExuZ1N0cmluZ0Z1bmN0aW9uID0gbGF0TG5nU3RyaW5nRnVuY3Rpb24obGF0TG5nUG9pbnRDb25maWcpO1xuICAgIHRoaXMuX2xhdExuZ1BvaW50RnVuY3Rpb24gPSBsYXRMbmdQb2ludEZ1bmN0aW9uKGxhdExuZ1BvaW50Q29uZmlnKTtcblxuICAgIHRoaXMuX2Zvcm1Db250cm9sT2JzLm5leHQodGhpcy5mb3JtQ29udHJvbCk7XG4gICAgdGhpcy5fem9vbS5uZXh0KHRoaXMuem9vbSk7XG5cbiAgICBpZiAodGhpcy5zZXRDZW50ZXJPbkxvY2F0aW9uU2V0KSB7XG4gICAgICB0aGlzLl9jZW50ZXJTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5zZXRDZW50ZXIodGhpcy5ub25aZXJvTGF0TG5nJCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2hvd01hcCkge1xuICAgICAgLy8gU2V0IHpvb20gb25seSBpZiBzaG93TWFwIGlzIHRydWVcbiAgICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuc2V0Wm9vbSh0aGlzLnpvb20kKTtcblxuICAgICAgLy8gcmVjZW50ZXIgcGVyaW9kaWNhbGx5XG4gICAgICBpZiAodGhpcy5yZWNlbnRlclRpbWUgPiAwKSB7XG4gICAgICAgIHRoaXMuX2ZseVRvQ2VudGVyU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuY2VudGVyJC5waXBlKHNraXAoMSksIHRocm90dGxlVGltZSh0aGlzLnJlY2VudGVyVGltZSwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IGZhbHNlLCB0cmFpbGluZzogdHJ1ZSB9KSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmZseVRvTWFya2VyKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1c2UgdGhlIGNlbnRlciBvZiB0aGUgbWFwIHRvIHNldCBsb2NhdGlvbnNcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnKSB7XG4gICAgICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlciQuc3Vic2NyaWJlKChjZW50ZXIpID0+IHtcbiAgICAgICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlckdpdmVuTWFyZ2luJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNSZWFkb25seU9yRGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlKGNlbnRlcik7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgLy8gZW5hYmxlIHNlbGVjdGluZyB0aGUgbG9jYXRpb24gb24gYSBtYXAgY2xpY2tcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljaykge1xuICAgICAgICB0aGlzLl9jbGlja1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNsaWNrRXZlbnQkLnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICAgIGlmICh4Py50eXBlID09PSAnY2xpY2snKSB7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlKHgubG5nTGF0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnJlYWRvbmx5KSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIG1hcmtlciB0byB0aGUgaW5qZWN0aW9uIHN0b3JlIGZvciBkaXNwbGF5XG4gICAgaWYgKHRoaXMuZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUpIHtcbiAgICAgIGlmICh0aGlzLm1hcmtlckNvbmZpZyAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuX21hcmtlckNvbmZpZy5uZXh0KHRoaXMubWFya2VyQ29uZmlnID09PSBmYWxzZSA/IG9mKGZhbHNlKSA6IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIodGhpcy5tYXJrZXJDb25maWcsIHRoaXMpKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kYnhNYXBib3hJbmplY3Rpb25TdG9yZS5hZGRJbmplY3Rpb25Db25maWcoe1xuICAgICAgICBrZXk6IHRoaXMubWFwSW5qZWN0aW9uS2V5IHx8IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSxcbiAgICAgICAgaW5qZWN0aW9uQ29uZmlnOiB7XG4gICAgICAgICAgY29tcG9uZW50Q2xhc3M6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCxcbiAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCwgdXNlVmFsdWU6IHRoaXMgfV1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLl96b29tLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fbWFya2VyQ29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZm9ybUNvbnRyb2xPYnMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2dlb1N1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2VudGVyU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9mbHlUb0NlbnRlclN1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2xpY2tTdWIuZGVzdHJveSgpO1xuICB9XG5cbiAgZmx5VG9NYXJrZXIoKSB7XG4gICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5lYXNlVG8oXG4gICAgICB0aGlzLm5vblplcm9MYXRMbmckLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIG1hcCgoeCkgPT4gKHsgY2VudGVyOiB4IH0gYXMgTWFwYm94RWFzZVRvKSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgdXNlQ3VycmVudExvY2F0aW9uKCkge1xuICAgIHRoaXMuX2dlb1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmdlb2xvY2F0aW9uJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocG9zaXRpb24pID0+IHtcbiAgICAgICAgaWYgKHBvc2l0aW9uKSB7XG4gICAgICAgICAgY29uc3QgeyBsYXRpdHVkZTogbGF0LCBsb25naXR1ZGU6IGxuZyB9ID0gcG9zaXRpb24uY29vcmRzO1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoeyBsYXQsIGxuZyB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkLm5leHQodHJ1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBvbk1hcmtlckRyYWdFbmQobWFya2VyOiBNYXJrZXIpIHtcbiAgICB0aGlzLnNldFZhbHVlKG1hcmtlci5nZXRMbmdMYXQoKSk7XG4gIH1cblxuICBzZXRWYWx1ZShsYXRMbmc/OiBNYXliZTxMYXRMbmdQb2ludD4pIHtcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKGxhdExuZyA/IHRoaXMuX2xhdExuZ1N0cmluZ0Z1bmN0aW9uKGxhdExuZykgOiBsYXRMbmcpO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzRGlydHkoKTtcbiAgfVxufVxuIl19
|
|
243
|
+
}] });
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcuZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBYyxZQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuSyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFzQyxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQXVFLG9CQUFvQixFQUFnQixtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBdUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL08sT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUErRCx1Q0FBdUMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzNMLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7O0FBRTFGLE1BQU0sQ0FBQyxNQUFNLG1EQUFtRCxHQUFHLG1DQUFtQyxDQUFDO0FBRXZH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RUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztpQkFDN0I7WUFDSCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQWM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQTJCO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzt3R0FuT1UsaUNBQWlDOzRGQUFqQyxpQ0FBaUMsdUNBSGpDLENBQUMsdUNBQXVDLEVBQUUsQ0FBQyxpREFuQjVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7OzRGQUlVLGlDQUFpQztrQkF2QjdDLFNBQVM7K0JBQ0U7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVCxhQUNVLENBQUMsdUNBQXVDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tcGFjdENvbnRleHRTdG9yZSwgbWFwQ29tcGFjdE1vZGVPYnMgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlQ29uZmlnLCBGb3JtbHlGaWVsZFByb3BzIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XG5pbXBvcnQgeyBza2lwLCBmaXJzdCwgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGgsIHN3aXRjaE1hcCwgbWFwLCBPYnNlcnZhYmxlLCB0aHJvdHRsZVRpbWUsIHNraXBXaGlsZSwgb2YsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBhc09ic2VydmFibGVGcm9tR2V0dGVyLCBmaWx0ZXJNYXliZSwgT2JzZXJ2YWJsZUZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dCwgU3Vic2NyaXB0aW9uT2JqZWN0IH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSwgTGF0TG5nUG9pbnQsIExhdExuZ1BvaW50RnVuY3Rpb25Db25maWcsIExhdExuZ1N0cmluZ0Z1bmN0aW9uLCBsYXRMbmdTdHJpbmdGdW5jdGlvbiwgTWlsbGlzZWNvbmRzLCBsYXRMbmdQb2ludEZ1bmN0aW9uLCBpc0RlZmF1bHRMYXRMbmdQb2ludCwgaXNWYWxpZExhdExuZ1BvaW50LCBMYXRMbmdQb2ludEZ1bmN0aW9uLCBpc1NhbWVMYXRMbmdQb2ludCB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgR2VvbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnQG5nLXdlYi1hcGlzL2dlb2xvY2F0aW9uJztcbmltcG9ydCB7IE1hcmtlciB9IGZyb20gJ21hcGJveC1nbCc7XG5pbXBvcnQgeyBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSwgRGJ4TWFwYm94TWFwU3RvcmUsIERieE1hcGJveE1hcmtlckRpc3BsYXlDb25maWcsIE1hcGJveEVhc2VUbywgTWFwYm94Wm9vbUxldmVsLCBwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViL21hcGJveCc7XG5pbXBvcnQgeyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQgfSBmcm9tICcuL2xhdGxuZy5maWVsZC5tYXJrZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSA9ICdEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9EQlhfRk9STV9NQVBCT1hfTEFUX0xOR19NQVJLRVJfQ09ORklHOiBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnID0ge1xuICBpY29uOiAncGluX2Ryb3AnXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzIGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XG4gIC8qKlxuICAgKiAoT3B0aW9uYWwpIFdoZXRoZXIgb3Igbm90IHRoZSBzaG93IHRoZSBtYXAuIElmIHRoZSBtYXAgaXMgbm90IHNob3duLCByZWxpZXMgb24gdGhlIGNlbnRlciBvZiB0aGUgcGFyZW50IG1hcCB0byBkZXRlcm1pbmUgcG9zaXRpb24uXG4gICAqXG4gICAqIERlZmF1bHRzIHRvIHRydWUuXG4gICAqXG4gICAqIENhc2VzIHdoZXJlIHRoaXMgd291bGQgYmUgc2V0IGZhbHNlIGlzIGlmIGFub3RoZXIgbWFwIGlzIGJlaW5nIHVzZWQuXG4gICAqL1xuICBzaG93TWFwPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGRpc3BsYXkgdGhlIGNlbnRlciBidXR0b24uIElzIHNldCB0byBmYWxzZSBpZiBzZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyBpcyB0cnVlLlxuICAgKi9cbiAgc2hvd0NlbnRlckJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBzZXQgdGhlIGNlbnRlciBvZiB0aGUgbWFwIG9uIHRoZSBsb2NhdGlvbiB3aGVuIHNldC4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIHNldENlbnRlck9uTG9jYXRpb25TZXQ/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdG8gZW5hYmxlIGRyYWdnaW5nIHRoZSBtYXAgdG8gc2VsZWN0IHRoZSBsb2NhdGlvbi4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICogT25seSBhcHBsaWNhYmxlIHdoZW4gc2hvd01hcCBpcyBmYWxzZS5cbiAgICovXG4gIHNlbGVjdExvY2F0aW9uT25NYXBEcmFnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSBjbGlja2luZyB0aGUgbWFwIHRvIHNlbGVjdCB0aGUgbG9jYXRpb24uIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKlxuICAgKiBPbmx5IGFwcGxpY2FibGUgd2hlbiBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIChPcHRpb25hbCkgWm9vbSB0byBzdGFydCB0aGUgbWFwIGF0LiBJZ25vcmVkIGlmIHRoZSBzaG93TWFwIGlzIGZhbHNlLlxuICAgKi9cbiAgem9vbT86IE1hcGJveFpvb21MZXZlbDtcbiAgLyoqXG4gICAqIFRpbWUgdW50aWwgcmVjZW50ZXJpbmcgb24gdGhlIG1hcmtlci4gSWYgdGhlIHRpbWUgaXMgMCB0aGVuIHRoZSByZWNlbnRlcmluZyBpcyBkaXNhYmxlZC5cbiAgICovXG4gIHJlY2VudGVyVGltZT86IE1pbGxpc2Vjb25kcztcbiAgbGF0TG5nQ29uZmlnPzogTGF0TG5nUG9pbnRGdW5jdGlvbkNvbmZpZztcbiAgLyoqXG4gICAqIFVuaXF1ZSBpbmplY3Rpb24ga2V5LlxuICAgKlxuICAgKiBJZiBub3QgZGVmaW5lZCwgdGhlIGRlZmF1bHQga2V5IHdpbGwgYmUgdXNlZC5cbiAgICpcbiAgICogSWYgZmFsc2UgaXMgcGFzc2VkLCB0aGUgbWFya2VyIHdpbGwgbm90IGJlIGNvbmZpZ3VyZWQgaW4gdGhlIGluamVjdGlvbiBzdG9yZS5cbiAgICovXG4gIG1hcEluamVjdGlvbktleT86IE1heWJlPHN0cmluZyB8IGZhbHNlPjtcbiAgLyoqXG4gICAqIE1hcmtlciBjb25maWd1cmF0aW9uIG9yIGZhY3RvcnkuIElmIGZhbHNlIGlzIHBhc3NlZCwgdGhlIG1hcmtlciB3aWxsIG5vdCBiZSBkaXNwbGF5ZWQuXG4gICAqL1xuICBtYXJrZXJDb25maWc/OiBmYWxzZSB8IE9ic2VydmFibGVGYWN0b3J5V2l0aFJlcXVpcmVkSW5wdXQ8RGJ4TWFwYm94TWFya2VyRGlzcGxheUNvbmZpZyB8IGZhbHNlLCBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ+O1xufVxuXG4vKlxuICBUT0RPOiBSZS1hZGQgbWVudSBmb3IgcGlja2luZyBhIG5ldyBsb2NhdGlvbiwgaW5jbHVkaW5nIHVzaW5nIHRoZSBjdXJyZW50IGxvY2F0aW9uLlxuIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ1c2VDdXJyZW50TG9jYXRpb24oKVwiIFtkaXNhYmxlZF09XCJpc1JlYWRvbmx5T3JEaXNhYmxlZCB8fCAodXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgPG1hdC1pY29uPm15X2xvY2F0aW9uPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gKi9cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtaW5wdXQtZmllbGRcIiBbbmdDbGFzc109XCIoY29tcGFjdENsYXNzJCB8IGFzeW5jKSA/PyAnJ1wiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd01hcFwiIGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1tYXBcIj5cbiAgICAgICAgPG1nbC1tYXAgZGJ4TWFwYm94TWFwPlxuICAgICAgICAgIDxtZ2wtbWFya2VyIFtsbmdMYXRdPVwiKGxhdExuZyQgfCBhc3luYykgfHwgWzAsIDBdXCIgW2RyYWdnYWJsZV09XCIhaXNSZWFkb25seU9yRGlzYWJsZWRcIiAobWFya2VyRHJhZ0VuZCk9XCJvbk1hcmtlckRyYWdFbmQoJGV2ZW50KVwiPjwvbWdsLW1hcmtlcj5cbiAgICAgICAgPC9tZ2wtbWFwPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGJ4LW1hcGJveC1pbnB1dC1maWVsZC1pbnB1dFwiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0NlbnRlckJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZmx5VG9NYXJrZXIoKVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5teV9sb2NhdGlvbjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJkYngtbWFwYm94LWlucHV0LWZpZWxkLWlucHV0LWZpZWxkXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD5Db29yZGluYXRlczwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiIC8+XG4gICAgICAgICAgPG1hdC1oaW50IGNsYXNzPVwiZGJ4LWhpbnQgZGJ4LXdhcm5cIiAqbmdJZj1cInVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCB8IGFzeW5jXCI+Q291bGQgbm90IGFjY2VzcyB5b3VyIGN1cnJlbnQgbG9jYXRpb24uPC9tYXQtaGludD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBwcm92aWRlcnM6IFtwcm92aWRlTWFwYm94U3RvcmVJZlBhcmVudElzVW5hdmFpbGFibGUoKV0sXG4gIHN0eWxlVXJsczogWycuLi9tYXBib3guZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQ8VCBleHRlbmRzIERieEZvcm1NYXBib3hMYXRMbmdDb21wb25lbnRGaWVsZFByb3BzID0gRGJ4Rm9ybU1hcGJveExhdExuZ0NvbXBvbmVudEZpZWxkUHJvcHM+IGV4dGVuZHMgRmllbGRUeXBlPEZpZWxkVHlwZUNvbmZpZzxUPj4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dlb2xvY2F0aW9uU2VydmljZSA9IGluamVjdChHZW9sb2NhdGlvblNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGNvbXBhY3QgPSBpbmplY3QoQ29tcGFjdENvbnRleHRTdG9yZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUgPSBpbmplY3QoRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlID0gaW5qZWN0KERieE1hcGJveE1hcFN0b3JlKTtcbiAgcmVhZG9ubHkgbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG4gIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBwcml2YXRlIF9sYXRMbmdTdHJpbmdGdW5jdGlvbiE6IExhdExuZ1N0cmluZ0Z1bmN0aW9uO1xuICBwcml2YXRlIF9sYXRMbmdQb2ludEZ1bmN0aW9uITogTGF0TG5nUG9pbnRGdW5jdGlvbjtcblxuICByZWFkb25seSBjb21wYWN0Q2xhc3MkID0gbWFwQ29tcGFjdE1vZGVPYnModGhpcy5jb21wYWN0Py5tb2RlJCwge1xuICAgIGNvbXBhY3Q6ICdkYngtbWFwYm94LWlucHV0LWZpZWxkLWNvbXBhY3QnXG4gIH0pO1xuXG4gIHByaXZhdGUgX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHVzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkJCA9IHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfZ2VvU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9jZW50ZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG4gIHByaXZhdGUgX2ZseVRvQ2VudGVyU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9jbGlja1N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcbiAgcHJpdmF0ZSBfem9vbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwYm94Wm9vbUxldmVsPigxMik7XG4gIHByaXZhdGUgX21hcmtlckNvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8T2JzZXJ2YWJsZTxEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnIHwgZmFsc2U+PihvZihERUZBVUxUX0RCWF9GT1JNX01BUEJPWF9MQVRfTE5HX01BUktFUl9DT05GSUcpKTtcblxuICBwcml2YXRlIF9mb3JtQ29udHJvbE9icyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QWJzdHJhY3RDb250cm9sPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgZm9ybUNvbnRyb2wkID0gdGhpcy5fZm9ybUNvbnRyb2xPYnMucGlwZShmaWx0ZXJNYXliZSgpKTtcblxuICByZWFkb25seSB2YWx1ZSQgPSB0aGlzLmZvcm1Db250cm9sJC5waXBlKFxuICAgIHN3aXRjaE1hcCgoY29udHJvbCkgPT4gY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoY29udHJvbC52YWx1ZSkpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGxhdExuZyQ6IE9ic2VydmFibGU8TGF0TG5nUG9pbnQ+ID0gdGhpcy52YWx1ZSQucGlwZShcbiAgICBmaWx0ZXJNYXliZSgpLFxuICAgIG1hcCgoeCkgPT4gdGhpcy5fbGF0TG5nUG9pbnRGdW5jdGlvbih4KSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQ8TGF0TG5nUG9pbnQ+KGlzU2FtZUxhdExuZ1BvaW50KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IG5vblplcm9MYXRMbmckOiBPYnNlcnZhYmxlPExhdExuZ1BvaW50PiA9IHRoaXMubGF0TG5nJC5waXBlKFxuICAgIC8qKlxuICAgICAqIENlbnRlciBvYnNlcnZhYmxlIHBhc3NlZCB0byB0aGUgc3RvcmUuIERvIG5vdCBwYXNzIGludmFsaWQgcG9pbnRzLlxuICAgICAqXG4gICAgICogQWxzbyBza2lwIGFueSBpbml0aWFsIDAsMCB2YWx1ZXMgc28gdGhlIGNlbnRlciBkb2Vzbid0IHBvdGVudGlhbGx5IFwid2hpcFwiIGZyb20gMCwwIHRvIGEgZmluYWwgbG9hZGVkIHZhbHVlLlxuICAgICAqL1xuICAgIHNraXBXaGlsZTxMYXRMbmdQb2ludD4oaXNEZWZhdWx0TGF0TG5nUG9pbnQpLFxuICAgIGZpbHRlcihpc1ZhbGlkTGF0TG5nUG9pbnQpXG4gICk7XG5cbiAgcmVhZG9ubHkgem9vbSQgPSB0aGlzLl96b29tLmFzT2JzZXJ2YWJsZSgpO1xuICByZWFkb25seSBtYXJrZXJDb25maWckID0gdGhpcy5fbWFya2VyQ29uZmlnLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB4KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIGdldCB6b29tKCk6IE1hcGJveFpvb21MZXZlbCB7XG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuZmllbGQucHJvcHMuem9vbSB8fCAxMiwgMTgpO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5rZXkgYXMgc3RyaW5nO1xuICB9XG5cbiAgZ2V0IGZvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLmZvcm0gYXMgRm9ybUdyb3VwO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzPy5sYWJlbDtcbiAgfVxuXG4gIGdldCBkZXNjcmlwdGlvbigpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kZXNjcmlwdGlvbjtcbiAgfVxuXG4gIGdldCBpc1JlYWRvbmx5T3JEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IHNob3dNYXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucHJvcHMuc2hvd01hcCA/PyB0cnVlO1xuICB9XG5cbiAgZ2V0IHNlbGVjdExvY2F0aW9uT25NYXBEcmFnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnID8/IHRydWU7XG4gIH1cblxuICBnZXQgc2VsZWN0TG9jYXRpb25Pbk1hcENsaWNrKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljayA/PyBmYWxzZTtcbiAgfVxuXG4gIGdldCBzZXRDZW50ZXJPbkxvY2F0aW9uU2V0KCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnNldENlbnRlck9uTG9jYXRpb25TZXQgPz8gdHJ1ZTtcbiAgfVxuXG4gIGdldCBzaG93Q2VudGVyQnV0dG9uKCkge1xuICAgIHJldHVybiAhdGhpcy5zZWxlY3RMb2NhdGlvbk9uTWFwRHJhZyAmJiB0aGlzLnByb3BzLnNob3dDZW50ZXJCdXR0b24gIT09IGZhbHNlO1xuICB9XG5cbiAgZ2V0IHJlY2VudGVyVGltZSgpOiBNaWxsaXNlY29uZHMge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLnJlY2VudGVyVGltZSB8fCAxMCAqIDEwMDA7XG4gIH1cblxuICBnZXQgdXNlQ3VycmVudExvY2F0aW9uRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VzZUN1cnJlbnRMb2NhdGlvbkRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IG1hcEluamVjdGlvbktleSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5wcm9wcy5tYXBJbmplY3Rpb25LZXk7XG4gIH1cblxuICBnZXQgbWFya2VyQ29uZmlnKCkge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnByb3BzLm1hcmtlckNvbmZpZztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGxhdExuZ1BvaW50Q29uZmlnID0geyAuLi50aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZywgd3JhcDogdGhpcy5maWVsZC5wcm9wcy5sYXRMbmdDb25maWc/LndyYXAgfHwgZmFsc2UsIHZhbGlkYXRlOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8udmFsaWRhdGUgfHwgZmFsc2UsIHByZWNpc2lvblJvdW5kaW5nOiB0aGlzLmZpZWxkLnByb3BzLmxhdExuZ0NvbmZpZz8ucHJlY2lzaW9uUm91bmRpbmcgPz8gJ3JvdW5kJyB9O1xuICAgIHRoaXMuX2xhdExuZ1N0cmluZ0Z1bmN0aW9uID0gbGF0TG5nU3RyaW5nRnVuY3Rpb24obGF0TG5nUG9pbnRDb25maWcpO1xuICAgIHRoaXMuX2xhdExuZ1BvaW50RnVuY3Rpb24gPSBsYXRMbmdQb2ludEZ1bmN0aW9uKGxhdExuZ1BvaW50Q29uZmlnKTtcblxuICAgIHRoaXMuX2Zvcm1Db250cm9sT2JzLm5leHQodGhpcy5mb3JtQ29udHJvbCk7XG4gICAgdGhpcy5fem9vbS5uZXh0KHRoaXMuem9vbSk7XG5cbiAgICBpZiAodGhpcy5zZXRDZW50ZXJPbkxvY2F0aW9uU2V0KSB7XG4gICAgICB0aGlzLl9jZW50ZXJTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5zZXRDZW50ZXIodGhpcy5ub25aZXJvTGF0TG5nJCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2hvd01hcCkge1xuICAgICAgLy8gU2V0IHpvb20gb25seSBpZiBzaG93TWFwIGlzIHRydWVcbiAgICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuc2V0Wm9vbSh0aGlzLnpvb20kKTtcblxuICAgICAgLy8gcmVjZW50ZXIgcGVyaW9kaWNhbGx5XG4gICAgICBpZiAodGhpcy5yZWNlbnRlclRpbWUgPiAwKSB7XG4gICAgICAgIHRoaXMuX2ZseVRvQ2VudGVyU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuY2VudGVyJC5waXBlKHNraXAoMSksIHRocm90dGxlVGltZSh0aGlzLnJlY2VudGVyVGltZSwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IGZhbHNlLCB0cmFpbGluZzogdHJ1ZSB9KSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmZseVRvTWFya2VyKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1c2UgdGhlIGNlbnRlciBvZiB0aGUgbWFwIHRvIHNldCBsb2NhdGlvbnNcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBEcmFnKSB7XG4gICAgICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlciQuc3Vic2NyaWJlKChjZW50ZXIpID0+IHtcbiAgICAgICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNlbnRlckdpdmVuTWFyZ2luJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNSZWFkb25seU9yRGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlKGNlbnRlcik7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgLy8gZW5hYmxlIHNlbGVjdGluZyB0aGUgbG9jYXRpb24gb24gYSBtYXAgY2xpY2tcbiAgICAgIGlmICh0aGlzLnNlbGVjdExvY2F0aW9uT25NYXBDbGljaykge1xuICAgICAgICB0aGlzLl9jbGlja1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmNsaWNrRXZlbnQkLnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICAgIGlmICh4Py50eXBlID09PSAnY2xpY2snKSB7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlKHgubG5nTGF0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnJlYWRvbmx5KSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIG1hcmtlciB0byB0aGUgaW5qZWN0aW9uIHN0b3JlIGZvciBkaXNwbGF5XG4gICAgaWYgKHRoaXMuZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUpIHtcbiAgICAgIGlmICh0aGlzLm1hcmtlckNvbmZpZyAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuX21hcmtlckNvbmZpZy5uZXh0KHRoaXMubWFya2VyQ29uZmlnID09PSBmYWxzZSA/IG9mKGZhbHNlKSA6IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIodGhpcy5tYXJrZXJDb25maWcsIHRoaXMpKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kYnhNYXBib3hJbmplY3Rpb25TdG9yZS5hZGRJbmplY3Rpb25Db25maWcoe1xuICAgICAgICBrZXk6IHRoaXMubWFwSW5qZWN0aW9uS2V5IHx8IERFRkFVTFRfREJYX0ZPUk1fTUFQQk9YX0xBVF9MTkdfRklFTERfSU5KRUNUSU9OX0tFWSxcbiAgICAgICAgaW5qZWN0aW9uQ29uZmlnOiB7XG4gICAgICAgICAgY29tcG9uZW50Q2xhc3M6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCxcbiAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCwgdXNlVmFsdWU6IHRoaXMgfV1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLl96b29tLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fbWFya2VyQ29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZm9ybUNvbnRyb2xPYnMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2dlb1N1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2VudGVyU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9mbHlUb0NlbnRlclN1Yi5kZXN0cm95KCk7XG4gICAgdGhpcy5fY2xpY2tTdWIuZGVzdHJveSgpO1xuICB9XG5cbiAgZmx5VG9NYXJrZXIoKSB7XG4gICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5lYXNlVG8oXG4gICAgICB0aGlzLm5vblplcm9MYXRMbmckLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIG1hcCgoeCkgPT4gKHsgY2VudGVyOiB4IH0gYXMgTWFwYm94RWFzZVRvKSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgdXNlQ3VycmVudExvY2F0aW9uKCkge1xuICAgIHRoaXMuX2dlb1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9nZW9sb2NhdGlvblNlcnZpY2UucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHBvc2l0aW9uKSA9PiB7XG4gICAgICAgIGlmIChwb3NpdGlvbikge1xuICAgICAgICAgIGNvbnN0IHsgbGF0aXR1ZGU6IGxhdCwgbG9uZ2l0dWRlOiBsbmcgfSA9IHBvc2l0aW9uLmNvb3JkcztcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKHsgbGF0LCBsbmcgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICB0aGlzLl91c2VDdXJyZW50TG9jYXRpb25EaXNhYmxlZC5uZXh0KHRydWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25NYXJrZXJEcmFnRW5kKG1hcmtlcjogTWFya2VyKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShtYXJrZXIuZ2V0TG5nTGF0KCkpO1xuICB9XG5cbiAgc2V0VmFsdWUobGF0TG5nPzogTWF5YmU8TGF0TG5nUG9pbnQ+KSB7XG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShsYXRMbmcgPyB0aGlzLl9sYXRMbmdTdHJpbmdGdW5jdGlvbihsYXRMbmcpIDogbGF0TG5nKTtcbiAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc0RpcnR5KCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,26 +1,23 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
|
|
2
2
|
import { shareReplay, map, combineLatest } from 'rxjs';
|
|
3
3
|
import { DbxFormMapboxLatLngFieldComponent } from './latlng.field.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
-
import * as i2 from "@
|
|
7
|
-
import * as i3 from "@angular/common";
|
|
5
|
+
import * as i1 from "@dereekb/dbx-web/mapbox";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
8
7
|
export class DbxFormMapboxLatLngFieldMarkerComponent {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, deps: [{ token: i1.DbxFormMapboxLatLngFieldComponent }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormMapboxLatLngFieldMarkerComponent, selector: "ng-component", ngImport: i0, template: `
|
|
8
|
+
fieldComponent = inject(DbxFormMapboxLatLngFieldComponent);
|
|
9
|
+
marker$ = combineLatest([this.fieldComponent.latLng$, this.fieldComponent.markerConfig$]).pipe(map(([latLng, markerConfig]) => {
|
|
10
|
+
if (markerConfig !== false) {
|
|
11
|
+
return { latLng, ...markerConfig };
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
}), shareReplay(1));
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormMapboxLatLngFieldMarkerComponent, selector: "ng-component", ngImport: i0, template: `
|
|
22
19
|
<dbx-mapbox-marker [marker]="marker$ | async"></dbx-mapbox-marker>
|
|
23
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
|
20
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.DbxMapboxMarkerComponent, selector: "dbx-mapbox-marker", inputs: ["marker"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
21
|
}
|
|
25
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngFieldMarkerComponent, decorators: [{
|
|
26
23
|
type: Component,
|
|
@@ -30,5 +27,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
30
27
|
`,
|
|
31
28
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
32
29
|
}]
|
|
33
|
-
}]
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
}] });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9tYXBib3gvc3JjL2xpYi9maWVsZC9sYXRsbmcvbGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBUzdFLE1BQU0sT0FBTyx1Q0FBdUM7SUFDekMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRTNELE9BQU8sR0FBdUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDekksR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTtRQUM3QixJQUFJLFlBQVksS0FBSyxLQUFLLEVBQUU7WUFDMUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDO1NBQ3BDO2FBQU07WUFDTCxPQUFPLFNBQVMsQ0FBQztTQUNsQjtJQUNILENBQUMsQ0FBQyxFQUNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO3dHQVpTLHVDQUF1Qzs0RkFBdkMsdUNBQXVDLG9EQUx4Qzs7R0FFVDs7NEZBR1UsdUNBQXVDO2tCQU5uRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNoYXJlUmVwbGF5LCBtYXAsIE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlciB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvbWFwYm94JztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LW1hcGJveC1tYXJrZXIgW21hcmtlcl09XCJtYXJrZXIkIHwgYXN5bmNcIj48L2RieC1tYXBib3gtbWFya2VyPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnQge1xuICByZWFkb25seSBmaWVsZENvbXBvbmVudCA9IGluamVjdChEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRDb21wb25lbnQpO1xuXG4gIHJlYWRvbmx5IG1hcmtlciQ6IE9ic2VydmFibGU8TWF5YmU8RGJ4TWFwYm94TWFya2VyPj4gPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmZpZWxkQ29tcG9uZW50LmxhdExuZyQsIHRoaXMuZmllbGRDb21wb25lbnQubWFya2VyQ29uZmlnJF0pLnBpcGUoXG4gICAgbWFwKChbbGF0TG5nLCBtYXJrZXJDb25maWddKSA9PiB7XG4gICAgICBpZiAobWFya2VyQ29uZmlnICE9PSBmYWxzZSkge1xuICAgICAgICByZXR1cm4geyBsYXRMbmcsIC4uLm1hcmtlckNvbmZpZyB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xufVxuIl19
|
|
@@ -13,16 +13,16 @@ import { DbxFormMapboxLatLngFieldMarkerComponent } from './latlng.field.marker.c
|
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
import * as i1 from "@ngx-formly/core";
|
|
15
15
|
export class DbxFormMapboxLatLngModule {
|
|
16
|
-
static
|
|
17
|
-
static
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, declarations: [DbxFormMapboxLatLngFieldComponent, DbxFormMapboxLatLngFieldMarkerComponent], imports: [CommonModule,
|
|
18
18
|
MatIconModule,
|
|
19
19
|
MatButtonModule,
|
|
20
20
|
DbxTextModule,
|
|
21
21
|
DbxMapboxModule,
|
|
22
22
|
FormsModule,
|
|
23
23
|
ReactiveFormsModule,
|
|
24
|
-
MatInputModule, i1.FormlyModule, NgxMapboxGLModule], exports: [DbxFormMapboxLatLngFieldMarkerComponent] });
|
|
25
|
-
static
|
|
24
|
+
MatInputModule, i1.FormlyModule, NgxMapboxGLModule], exports: [DbxFormMapboxLatLngFieldMarkerComponent] });
|
|
25
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, imports: [CommonModule,
|
|
26
26
|
MatIconModule,
|
|
27
27
|
MatButtonModule,
|
|
28
28
|
DbxTextModule,
|
|
@@ -33,7 +33,7 @@ export class DbxFormMapboxLatLngModule {
|
|
|
33
33
|
FormlyModule.forChild({
|
|
34
34
|
types: [{ name: 'mapbox-latlng-picker', component: DbxFormMapboxLatLngFieldComponent, wrappers: ['style', 'form-field'] }]
|
|
35
35
|
}),
|
|
36
|
-
NgxMapboxGLModule] });
|
|
36
|
+
NgxMapboxGLModule] });
|
|
37
37
|
}
|
|
38
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormMapboxLatLngModule, decorators: [{
|
|
39
39
|
type: NgModule,
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
56
56
|
exports: [DbxFormMapboxLatLngFieldMarkerComponent]
|
|
57
57
|
}]
|
|
58
58
|
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0bG5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL21hcGJveC9zcmMvbGliL2ZpZWxkL2xhdGxuZy9sYXRsbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0saUNBQWlDLENBQUM7OztBQW9CMUYsTUFBTSxPQUFPLHlCQUF5Qjt3R0FBekIseUJBQXlCO3lHQUF6Qix5QkFBeUIsaUJBSHJCLGlDQUFpQyxFQUFFLHVDQUF1QyxhQWJ2RixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZUFBZTtZQUNmLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsY0FBYyxtQkFJZCxpQkFBaUIsYUFHVCx1Q0FBdUM7eUdBRXRDLHlCQUF5QixZQWhCbEMsWUFBWTtZQUNaLGFBQWE7WUFDYixlQUFlO1lBQ2YsYUFBYTtZQUNiLGVBQWU7WUFDZixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCxZQUFZLENBQUMsUUFBUSxDQUFDO2dCQUNwQixLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUUsaUNBQWlDLEVBQUUsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUM7YUFDM0gsQ0FBQztZQUNGLGlCQUFpQjs7NEZBS1IseUJBQXlCO2tCQWxCckMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLFlBQVksQ0FBQyxRQUFRLENBQUM7NEJBQ3BCLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxpQ0FBaUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLEVBQUUsQ0FBQzt5QkFDM0gsQ0FBQzt3QkFDRixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVksRUFBRSxDQUFDLGlDQUFpQyxFQUFFLHVDQUF1QyxDQUFDO29CQUMxRixPQUFPLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQztpQkFDbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBEYnhUZXh0TW9kdWxlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBOZ3hNYXBib3hHTE1vZHVsZSB9IGZyb20gJ25neC1tYXBib3gtZ2wnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IERieE1hcGJveE1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWIvbWFwYm94JztcbmltcG9ydCB7IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZE1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vbGF0bG5nLmZpZWxkLm1hcmtlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIERieFRleHRNb2R1bGUsXG4gICAgRGJ4TWFwYm94TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgRm9ybWx5TW9kdWxlLmZvckNoaWxkKHtcbiAgICAgIHR5cGVzOiBbeyBuYW1lOiAnbWFwYm94LWxhdGxuZy1waWNrZXInLCBjb21wb25lbnQ6IERieEZvcm1NYXBib3hMYXRMbmdGaWVsZENvbXBvbmVudCwgd3JhcHBlcnM6IFsnc3R5bGUnLCAnZm9ybS1maWVsZCddIH1dXG4gICAgfSksXG4gICAgTmd4TWFwYm94R0xNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkQ29tcG9uZW50LCBEYnhGb3JtTWFwYm94TGF0TG5nRmllbGRNYXJrZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbRGJ4Rm9ybU1hcGJveExhdExuZ0ZpZWxkTWFya2VyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTWFwYm94TGF0TG5nTW9kdWxlIHt9XG4iXX0=
|