@dereekb/dbx-web 9.24.19 → 9.24.20

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,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/dbx-web/calendar",
3
- "version": "9.24.19",
3
+ "version": "9.24.20",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^14.2.0",
6
6
  "@angular/core": "^14.2.0",
@@ -8,7 +8,7 @@
8
8
  "rxjs": "^7.5.0",
9
9
  "@angular/material": "^14.2.0",
10
10
  "angular-calendar": "^0.30.1",
11
- "@dereekb/dbx-web": "9.24.19"
11
+ "@dereekb/dbx-web": "9.24.20"
12
12
  },
13
13
  "dependencies": {
14
14
  "tslib": "^2.3.0"
@@ -6,6 +6,7 @@ export * from './mapbox.injection.store';
6
6
  export * from './mapbox.module';
7
7
  export * from './mapbox.layout.component';
8
8
  export * from './mapbox.layout.drawer.component';
9
+ export * from './mapbox.layout.resize.sync.directive';
9
10
  export * from './mapbox.marker';
10
11
  export * from './mapbox.marker.component';
11
12
  export * from './mapbox.markers.component';
@@ -18,4 +19,4 @@ export * from './mapbox.store.provide';
18
19
  export * from './mapbox';
19
20
  export * from './mapbox.util';
20
21
  export * from './options';
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21hcGJveC5jZHJlZi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LmNoYW5nZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LmluamVjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guaW5qZWN0aW9uLnN0b3JlLnByb3ZpZGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guaW5qZWN0aW9uLnN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LmxheW91dC5kcmF3ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94Lm1hcmtlcic7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5tYXJrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94Lm1hcmtlcnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94Lm1lbnUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LnJ4anMnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5zdG9yZS5tYXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LnN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LnN0b3JlLnByb3ZpZGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL29wdGlvbnMnO1xuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwYm94LmNkcmVmLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guY2hhbmdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guaW5qZWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5pbmplY3Rpb24uc3RvcmUucHJvdmlkZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5pbmplY3Rpb24uc3RvcmUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LmxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gubGF5b3V0LmRyYXdlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gubGF5b3V0LnJlc2l6ZS5zeW5jLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5tYXJrZXInO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gubWFya2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5tYXJrZXJzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5yeGpzJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXBib3guc3RvcmUubWFwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5zdG9yZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcGJveC5zdG9yZS5wcm92aWRlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwYm94LnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9vcHRpb25zJztcbiJdfQ==
@@ -31,6 +31,7 @@ export class DbxMapboxLayoutComponent extends SubscriptionObject {
31
31
  this._openToggle = new BehaviorSubject(true);
32
32
  this._color = new BehaviorSubject(undefined);
33
33
  this._toggleSub = new SubscriptionObject();
34
+ this.resized$ = this._resized.asObservable();
34
35
  this.side$ = this._side.pipe(distinctUntilChanged(), shareReplay(1));
35
36
  this.mode$ = this._mode.pipe(distinctUntilChanged(), shareReplay(1));
36
37
  this.hasContent$ = combineLatest([this._forceHasContent, this.dbxMapboxMapStore.hasContent$]).pipe(map(([hasContent, forceHasContent]) => hasContent || forceHasContent), distinctUntilChanged(), shareReplay(1));
@@ -68,12 +69,12 @@ export class DbxMapboxLayoutComponent extends SubscriptionObject {
68
69
  let obs;
69
70
  if (mode === 'push') {
70
71
  obs = combineLatest([this.opened$.pipe(distinctUntilChanged()), this._updateMargins]).pipe(tap(([opened]) => {
71
- let { right } = this.container._contentMargins;
72
- this.container.updateContentMargins();
72
+ let { right } = this.drawerContainer._contentMargins;
73
+ this.drawerContainer.updateContentMargins();
73
74
  setTimeout(() => {
74
75
  const flip = opened ? 1 : -1;
75
76
  if (opened) {
76
- right = this.container._contentMargins.right;
77
+ right = this.drawerContainer._contentMargins.right;
77
78
  }
78
79
  right = (right || 0) * flip;
79
80
  const element = this.content.nativeElement;
@@ -96,7 +97,7 @@ export class DbxMapboxLayoutComponent extends SubscriptionObject {
96
97
  }
97
98
  else {
98
99
  obs = combineLatest([this.opened$.pipe(distinctUntilChanged()), this._updateMargins]).pipe(switchMap((_) => this.dbxMapboxMapStore.mapInstance$), tap((x) => {
99
- this.container.updateContentMargins();
100
+ this.drawerContainer.updateContentMargins();
100
101
  x.triggerRepaint();
101
102
  }));
102
103
  }
@@ -143,15 +144,18 @@ export class DbxMapboxLayoutComponent extends SubscriptionObject {
143
144
  this._color.next(color);
144
145
  }
145
146
  onResized(event) {
146
- this._resized.next();
147
+ this._resized.next(event);
147
148
  }
148
149
  }
149
150
  DbxMapboxLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxLayoutComponent, deps: [{ token: i1.DbxMapboxMapStore }], target: i0.ɵɵFactoryTarget.Component });
150
- DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", mode: "mode", opened: "opened", hasContent: "hasContent", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" [mode]=\"(mode$ | async) || 'side'\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: i7.DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
151
+ DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", mode: "mode", opened: "opened", hasContent: "hasContent", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "containerElement", first: true, predicate: MatDrawerContainer, descendants: true, read: ElementRef }, { propertyName: "drawerContainer", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container #containerElement class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" [mode]=\"(mode$ | async) || 'side'\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: i7.DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
151
152
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxLayoutComponent, decorators: [{
152
153
  type: Component,
153
- args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" [mode]=\"(mode$ | async) || 'side'\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
154
- }], ctorParameters: function () { return [{ type: i1.DbxMapboxMapStore }]; }, propDecorators: { container: [{
154
+ args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container #containerElement class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" [mode]=\"(mode$ | async) || 'side'\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
155
+ }], ctorParameters: function () { return [{ type: i1.DbxMapboxMapStore }]; }, propDecorators: { containerElement: [{
156
+ type: ViewChild,
157
+ args: [MatDrawerContainer, { read: ElementRef }]
158
+ }], drawerContainer: [{
155
159
  type: ViewChild,
156
160
  args: [MatDrawerContainer]
157
161
  }], content: [{
@@ -168,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
168
172
  }], drawerColor: [{
169
173
  type: Input
170
174
  }] } });
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9tYXBib3gvc3JjL2xpYi9tYXBib3gubGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkssT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFpQixNQUFNLGtCQUFrQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7O0FBTy9EOzs7Ozs7R0FNRztBQU1ILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxrQkFBa0I7SUErRDlELFlBQXFCLGlCQUFvQztRQUN2RCxLQUFLLEVBQUUsQ0FBQztRQURXLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUF4RGpELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQy9CLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMs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UUFDdkMsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsSUFDSSxXQUFXLENBQUMsS0FBMkI7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFtQjtRQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O3NIQS9NVSx3QkFBd0I7MEdBQXhCLHdCQUF3QixvTkFDeEIsa0JBQWtCLGdIQUdDLFVBQVUsa0VDOUIxQyx1N0JBY0E7NEZEWWEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQjt3R0FNcEIsU0FBUztzQkFEakIsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSXBCLE9BQU87c0JBRGYsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBeUtwRCxJQUFJO3NCQURQLEtBQUs7Z0JBUUYsSUFBSTtzQkFEUCxLQUFLO2dCQVFGLE1BQU07c0JBRFQsS0FBSztnQkFRRixVQUFVO3NCQURiLEtBQUs7Z0JBUUYsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdGFwLCBzd2l0Y2hNYXAsIGZpcnN0LCBzdGFydFdpdGgsIHNoYXJlUmVwbGF5LCB0aHJvdHRsZVRpbWUsIG1hcCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWFwU3RvcmUgfSBmcm9tICcuL21hcGJveC5zdG9yZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgZGJ4Q29sb3JCYWNrZ3JvdW5kLCBEYnhUaGVtZUNvbG9yIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBSZXNpemVkRXZlbnQgfSBmcm9tICdhbmd1bGFyLXJlc2l6ZS1ldmVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25PYmplY3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1hdERyYXdlckNvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgTWFwYm94RWFzZVRvIH0gZnJvbSAnLi9tYXBib3gnO1xuXG5leHBvcnQgdHlwZSBEYnhNYXBib3hMYXlvdXRTaWRlID0gJ2xlZnQnIHwgJ3JpZ2h0JztcblxuZXhwb3J0IHR5cGUgRGJ4TWFwYm94TGF5b3V0TW9kZSA9ICdzaWRlJyB8ICdwdXNoJztcblxuLyoqXG4gKiBSZXNwb25zaXZlIGNvbXBvbmVudCBtZWFudCB0byBzcGxpdCBhIGxlZnQgYW5kIHJpZ2h0IGNvbHVtbi5cbiAqXG4gKiBUaGUgbGVmdCBjb2x1bW4gaXMgc21hbGxlciB0aGFuIHRoZSByaWdodCBjb2x1bW4sIHdoaWNoIGNvbnRhaW5zIHRoZSBwcmltYXJ5IGNvbnRlbnQuXG4gKlxuICogUmVxdWlyZXMgYSBUd29Db2x1bW5zQ29udGV4dFN0b3JlIHRvIGJlIHByb3ZpZGVkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtbWFwYm94LWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXBib3gubGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwYm94LmxheW91dC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERieE1hcGJveExheW91dENvbXBvbmVudCBleHRlbmRzIFN1YnNjcmlwdGlvbk9iamVjdCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZChNYXREcmF3ZXJDb250YWluZXIpXG4gIHJlYWRvbmx5IGNvbnRhaW5lciE6IE1hdERyYXdlckNvbnRhaW5lcjtcblxuICBAVmlld0NoaWxkKCdjb250ZW50JywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgcmVhZG9ubHkgY29udGVudCE6IEVsZW1lbnRSZWY7XG5cbiAgcHJpdmF0ZSBfcmVzaXplZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX3VwZGF0ZU1hcmdpbnMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9mb3JjZUhhc0NvbnRlbnQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBfbW9kZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGJ4TWFwYm94TGF5b3V0TW9kZT4oJ3NpZGUnKTtcbiAgcHJpdmF0ZSBfc2lkZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGJ4TWFwYm94TGF5b3V0U2lkZT4oJ3JpZ2h0Jyk7XG4gIHByaXZhdGUgX29wZW5Ub2dnbGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwcml2YXRlIF9jb2xvciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RGJ4VGhlbWVDb2xvcj4+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgX3RvZ2dsZVN1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICByZWFkb25seSBzaWRlJCA9IHRoaXMuX3NpZGUucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPERieE1hcGJveExheW91dE1vZGU+ID0gdGhpcy5fbW9kZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBoYXNDb250ZW50JCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2ZvcmNlSGFzQ29udGVudCwgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5oYXNDb250ZW50JF0pLnBpcGUoXG4gICAgbWFwKChbaGFzQ29udGVudCwgZm9yY2VIYXNDb250ZW50XSkgPT4gaGFzQ29udGVudCB8fCBmb3JjZUhhc0NvbnRlbnQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBvcGVuZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5oYXNDb250ZW50JCwgdGhpcy5fb3BlblRvZ2dsZV0pLnBpcGUoXG4gICAgbWFwKChbaGFzQ29udGVudCwgb3Blbl0pID0+IGhhc0NvbnRlbnQgJiYgb3BlbiksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBvc2l0aW9uJDogT2JzZXJ2YWJsZTwnc3RhcnQnIHwgJ2VuZCc+ID0gdGhpcy5zaWRlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gKHggPT09ICdyaWdodCcgPyAnZW5kJyA6ICdzdGFydCcpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZHJhd2VyQ2xhc3NlcyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnNpZGUkLCB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmhhc0NvbnRlbnQkLCB0aGlzLm9wZW5lZCRdKS5waXBlKFxuICAgIC8vXG4gICAgbWFwKChbc2lkZSwgaGFzQ29udGVudCwgb3Blbl0pID0+IChoYXNDb250ZW50ID8gJ2hhcy1kcmF3ZXItY29udGVudCcgOiAnbm8tZHJhd2VyLWNvbnRlbnQnKSArIGAgJHtzaWRlfS1kcmF3ZXIgYCArIChvcGVuID8gJ29wZW4tZHJhd2VyJyA6ICcnKSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRyYXdlckJ1dHRvbkNsYXNzZXMkID0gY29tYmluZUxhdGVzdChbdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5oYXNDb250ZW50JCwgdGhpcy5fY29sb3JdKS5waXBlKFxuICAgIC8vXG4gICAgbWFwKChbaGFzQ29udGVudCwgY29sb3JdKSA9PiBkYnhDb2xvckJhY2tncm91bmQoY29sb3IpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYnV0dG9uSWNvbiQ6IE9ic2VydmFibGU8c3RyaW5nPiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc2lkZSQsIHRoaXMub3BlbmVkJF0pLnBpcGUoXG4gICAgbWFwKChbc2lkZSwgb3BlbmVkXSkgPT4ge1xuICAgICAgbGV0IGljb25zID0gWydjaGV2cm9uX3JpZ2h0JywgJ2NoZXZyb25fbGVmdCddO1xuXG4gICAgICBpZiAoc2lkZSA9PT0gJ2xlZnQnKSB7XG4gICAgICAgIGljb25zID0gaWNvbnMucmV2ZXJzZSgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gb3BlbmVkID8gaWNvbnNbMF0gOiBpY29uc1sxXTtcbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlOiBEYnhNYXBib3hNYXBTdG9yZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IChcbiAgICAgIHRoaXMuc2lkZSQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgdGhpcy5fcmVzaXplZC5waXBlKFxuICAgICAgICAgICAgdGhyb3R0bGVUaW1lKDEwMCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICAgICAgbWFwKCgpID0+ICdyJyksXG4gICAgICAgICAgICBzdGFydFdpdGgoJ3MnKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKSBhcyBPYnNlcnZhYmxlPCdzJyB8ICdyJz5cbiAgICApLnN1YnNjcmliZSgocmVhc29uKSA9PiB7XG4gICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLm1hcEluc3RhbmNlJC5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgICAgeC5yZXNpemUoKTtcblxuICAgICAgICAvLyBzaWRlIGNoYW5nZWRcbiAgICAgICAgaWYgKHJlYXNvbiA9PT0gJ3MnKSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVNYXJnaW5zLm5leHQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBsZXQgaW5pdCA9IGZhbHNlO1xuXG4gICAgdGhpcy5fdG9nZ2xlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMubW9kZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKG1vZGUpID0+IHtcbiAgICAgICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPHVua25vd24+O1xuXG4gICAgICAgICAgaWYgKG1vZGUgPT09ICdwdXNoJykge1xuICAgICAgICAgICAgb2JzID0gY29tYmluZUxhdGVzdChbdGhpcy5vcGVuZWQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksIHRoaXMuX3VwZGF0ZU1hcmdpbnNdKS5waXBlKFxuICAgICAgICAgICAgICB0YXAoKFtvcGVuZWRdKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHsgcmlnaHQgfSA9IHRoaXMuY29udGFpbmVyLl9jb250ZW50TWFyZ2lucztcblxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLnVwZGF0ZUNvbnRlbnRNYXJnaW5zKCk7XG5cbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGZsaXAgPSBvcGVuZWQgPyAxIDogLTE7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChvcGVuZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgPSB0aGlzLmNvbnRhaW5lci5fY29udGVudE1hcmdpbnMucmlnaHQ7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHJpZ2h0ID0gKHJpZ2h0IHx8IDApICogZmxpcDtcblxuICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gZWxlbWVudC5jbGllbnRXaWR0aDtcblxuICAgICAgICAgICAgICAgICAgY29uc3QgbWFyZ2luID0ge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0TWFyZ2luOiAwLFxuICAgICAgICAgICAgICAgICAgICByaWdodE1hcmdpbjogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aDogd2lkdGhcbiAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGVhc2VUbzogT2JzZXJ2YWJsZTxNYXBib3hFYXNlVG8+ID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5jYWxjdWxhdGVOZXh0Q2VudGVyT2Zmc2V0V2l0aFNjcmVlbk1hcmdpbkNoYW5nZShtYXJnaW4pLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoY2VudGVyKSA9PiAoeyB0bzogeyBjZW50ZXIsIGR1cmF0aW9uOiAzMjAwLCBlc3NlbnRpYWw6IGZhbHNlIH0gfSBhcyBNYXBib3hFYXNlVG8pKVxuICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5zZXRNYXJnaW4ob3BlbmVkID8gbWFyZ2luIDogdW5kZWZpbmVkKTtcblxuICAgICAgICAgICAgICAgICAgaWYgKCFpbml0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuZWFzZVRvKGVhc2VUbyk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbml0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9icyA9IGNvbWJpbmVMYXRlc3QoW3RoaXMub3BlbmVkJC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLCB0aGlzLl91cGRhdGVNYXJnaW5zXSkucGlwZShcbiAgICAgICAgICAgICAgc3dpdGNoTWFwKChfKSA9PiB0aGlzLmRieE1hcGJveE1hcFN0b3JlLm1hcEluc3RhbmNlJCksXG4gICAgICAgICAgICAgIHRhcCgoeCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLnVwZGF0ZUNvbnRlbnRNYXJnaW5zKCk7XG4gICAgICAgICAgICAgICAgeC50cmlnZ2VyUmVwYWludCgpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gb2JzO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fcmVzaXplZC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3VwZGF0ZU1hcmdpbnMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zaWRlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fb3BlblRvZ2dsZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2NvbG9yLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fdG9nZ2xlU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9mb3JjZUhhc0NvbnRlbnQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHRvZ2dsZURyYXdlcihvcGVuPzogYm9vbGVhbikge1xuICAgIGlmIChvcGVuID09IG51bGwpIHtcbiAgICAgIG9wZW4gPSAhdGhpcy5fb3BlblRvZ2dsZS52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLl9vcGVuVG9nZ2xlLm5leHQob3Blbik7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2lkZShzaWRlOiBNYXliZTxEYnhNYXBib3hMYXlvdXRTaWRlPikge1xuICAgIGlmIChzaWRlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX3NpZGUubmV4dChzaWRlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgbW9kZShtb2RlOiBNYXliZTxEYnhNYXBib3hMYXlvdXRNb2RlPikge1xuICAgIGlmIChtb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX21vZGUubmV4dChtb2RlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgb3BlbmVkKG9wZW5lZDogTWF5YmU8Ym9vbGVhbj4pIHtcbiAgICBpZiAob3BlbmVkICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX29wZW5Ub2dnbGUubmV4dChvcGVuZWQpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBoYXNDb250ZW50KGhhc0NvbnRlbnQ6IE1heWJlPGJvb2xlYW4+KSB7XG4gICAgaWYgKGhhc0NvbnRlbnQgIT0gbnVsbCkge1xuICAgICAgdGhpcy5fZm9yY2VIYXNDb250ZW50Lm5leHQoaGFzQ29udGVudCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGRyYXdlckNvbG9yKGNvbG9yOiBNYXliZTxEYnhUaGVtZUNvbG9yPikge1xuICAgIHRoaXMuX2NvbG9yLm5leHQoY29sb3IpO1xuICB9XG5cbiAgb25SZXNpemVkKGV2ZW50OiBSZXNpemVkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXNpemVkLm5leHQoKTtcbiAgfVxufVxuIiwiPG1hdC1kcmF3ZXItY29udGFpbmVyIGNsYXNzPVwiZGJ4LW1hcGJveC1sYXlvdXQtY29udGFpbmVyXCIgW25nQ2xhc3NdPVwiKGRyYXdlckNsYXNzZXMkIHwgYXN5bmMpIHx8ICcnXCIgW2hhc0JhY2tkcm9wXT1cImZhbHNlXCI+XG4gIDxtYXQtZHJhd2VyIGNsYXNzPVwiZGJ4LW1hcGJveC1sYXlvdXQtZHJhd2VyXCIgI2RyYXdlciBbb3BlbmVkXT1cIm9wZW5lZCQgfCBhc3luY1wiIFttb2RlXT1cIihtb2RlJCB8IGFzeW5jKSB8fCAnc2lkZSdcIiBbcG9zaXRpb25dPVwiKHBvc2l0aW9uJCB8IGFzeW5jKSB8fCAnZW5kJ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJkYngtbWFwYm94LWxheW91dC1kcmF3ZXItY29udGVudFwiIFtuZ0NsYXNzXT1cIihkcmF3ZXJCdXR0b25DbGFzc2VzJCB8IGFzeW5jKSB8fCAnJ1wiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2RyYXdlcl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGJ4LW1hcGJveC1sYXlvdXQtZHJhd2VyPjwvZGJ4LW1hcGJveC1sYXlvdXQtZHJhd2VyPlxuICAgIDwvZGl2PlxuICA8L21hdC1kcmF3ZXI+XG4gIDxtYXQtZHJhd2VyLWNvbnRlbnQgI2NvbnRlbnQgY2xhc3M9XCJkYngtbWFwYm94LWxheW91dC1jb250ZW50XCIgKHJlc2l6ZWQpPVwib25SZXNpemVkKCRldmVudClcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlRHJhd2VyKClcIiBjbGFzcz1cImRieC1tYXBib3gtbGF5b3V0LWRyYXdlci1idXR0b25cIiBbbmdDbGFzc109XCIoZHJhd2VyQnV0dG9uQ2xhc3NlcyQgfCBhc3luYykgfHwgJydcIj5cbiAgICAgIDxtYXQtaWNvbj57eyBidXR0b25JY29uJCB8IGFzeW5jIH19PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvbWF0LWRyYXdlci1jb250ZW50PlxuPC9tYXQtZHJhd2VyLWNvbnRhaW5lcj5cbiJdfQ==
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9tYXBib3gvc3JjL2xpYi9tYXBib3gubGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkssT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFpQixNQUFNLGtCQUFrQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7O0FBTy9EOzs7Ozs7R0FNRztBQU1ILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxrQkFBa0I7SUFtRTlELFlBQXFCLGlCQUFvQztRQUN2RCxLQUFLLEVBQUUsQ0FBQztRQURXLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUF6RGpELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQUN2QyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDckMscUJBQWdCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDdkQsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFzQixNQUFNLENBQUMsQ0FBQztRQUN6RCxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQXNCLE9BQU8sQ0FBQyxDQUFDO1FBQzFELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDakQsV0FBTSxHQUFHLElBQUksZUFBZSxDQUF1QixTQUFTLENBQUMsQ0FBQztRQUM5RCxlQUFVLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBRXJDLGFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hDLFVBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLFVBQUssR0FBb0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVqRyxnQkFBVyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3BHLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLElBQUksZUFBZSxDQUFDLEVBQ3JFLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sWUFBTyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN6RSxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxFQUMvQyxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGNBQVMsR0FBZ0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQy9ELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQzdDLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sbUJBQWMsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSTtRQUMxRyxFQUFFO1FBQ0YsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUMvSSxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHlCQUFvQixHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSTtRQUNuRyxFQUFFO1FBQ0YsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ3ZELG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRU8sZ0JBQVcsR0FBdUIsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3ZGLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDckIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxlQUFlLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFFOUMsSUFBSSxJQUFJLEtBQUssTUFBTSxFQUFFO2dCQUNuQixLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3pCO1lBRUQsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFJRixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEdBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2IsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixZQUFZLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQy9ELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFDZCxTQUFTLENBQUMsR0FBRyxDQUFDLENBQ2YsQ0FDRixDQUVKLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDbEQsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUVYLGVBQWU7Z0JBQ2YsSUFBSSxNQUFNLEtBQUssR0FBRyxFQUFFO29CQUNsQixVQUFVLENBQUMsR0FBRyxFQUFFO3dCQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzdCLENBQUMsQ0FBQyxDQUFDO2lCQUNKO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQztRQUVqQixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSzthQUN0QyxJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDakIsSUFBSSxHQUF3QixDQUFDO1lBRTdCLElBQUksSUFBSSxLQUFLLE1BQU0sRUFBRTtnQkFDbkIsR0FBRyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3hGLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRTtvQkFDZixJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUM7b0JBRXJELElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztvQkFFNUMsVUFBVSxDQUFDLEdBQUcsRUFBRTt3QkFDZCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBRTdCLElBQUksTUFBTSxFQUFFOzRCQUNWLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7eUJBQ3BEO3dCQUVELEtBQUssR0FBRyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7d0JBRTVCLE1BQU0sT0FBTyxHQUFnQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQzt3QkFDeEQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQzt3QkFFbEMsTUFBTSxNQUFNLEdBQUc7NEJBQ2IsVUFBVSxFQUFFLENBQUM7NEJBQ2IsV0FBVyxFQUFFLEtBQUs7NEJBQ2xCLFNBQVMsRUFBRSxLQUFLO3lCQUNqQixDQUFDO3dCQUVGLE1BQU0sTUFBTSxHQUE2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsK0NBQStDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUMxSCxLQUFLLEVBQUUsRUFDUCxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQW1CLENBQUEsQ0FBQyxDQUN4RixDQUFDO3dCQUVGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO3dCQUU5RCxJQUFJLENBQUMsSUFBSSxFQUFFOzRCQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7eUJBQ3ZDOzZCQUFNOzRCQUNMLElBQUksR0FBRyxJQUFJLENBQUM7eUJBQ2I7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLEdBQUcsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN4RixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsRUFDckQsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ1IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO29CQUM1QyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQyxDQUNILENBQUM7YUFDSDtZQUVELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQWM7UUFDekIsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFO1lBQ2hCLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1NBQ2hDO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLElBQWdDO1FBQ3ZDLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRCxJQUNJLElBQUksQ0FBQyxJQUFnQztRQUN2QyxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsSUFDSSxNQUFNLENBQUMsTUFBc0I7UUFDL0IsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVELElBQ0ksVUFBVSxDQUFDLFVBQTBCO1FBQ3ZDLElBQUksVUFBVSxJQUFJLElBQUksRUFBRTtZQUN0QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUVELElBQ0ksV0FBVyxDQUFDLEtBQTJCO1FBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBbUI7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQzs7c0hBbk5VLHdCQUF3QjswR0FBeEIsd0JBQXdCLDJOQUN4QixrQkFBa0IsMkJBQVUsVUFBVSwrREFHdEMsa0JBQWtCLGdIQUdDLFVBQVUsa0VDakMxQyx5OEJBY0E7NEZEWWEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQjt3R0FNcEIsZ0JBQWdCO3NCQUR4QixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJMUMsZUFBZTtzQkFEdkIsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSXBCLE9BQU87c0JBRGYsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBMEtwRCxJQUFJO3NCQURQLEtBQUs7Z0JBUUYsSUFBSTtzQkFEUCxLQUFLO2dCQVFGLE1BQU07c0JBRFQsS0FBSztnQkFRRixVQUFVO3NCQURiLEtBQUs7Z0JBUUYsV0FBVztzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdGFwLCBzd2l0Y2hNYXAsIGZpcnN0LCBzdGFydFdpdGgsIHNoYXJlUmVwbGF5LCB0aHJvdHRsZVRpbWUsIG1hcCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWFwU3RvcmUgfSBmcm9tICcuL21hcGJveC5zdG9yZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgZGJ4Q29sb3JCYWNrZ3JvdW5kLCBEYnhUaGVtZUNvbG9yIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBSZXNpemVkRXZlbnQgfSBmcm9tICdhbmd1bGFyLXJlc2l6ZS1ldmVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25PYmplY3QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IE1hdERyYXdlckNvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgTWFwYm94RWFzZVRvIH0gZnJvbSAnLi9tYXBib3gnO1xuXG5leHBvcnQgdHlwZSBEYnhNYXBib3hMYXlvdXRTaWRlID0gJ2xlZnQnIHwgJ3JpZ2h0JztcblxuZXhwb3J0IHR5cGUgRGJ4TWFwYm94TGF5b3V0TW9kZSA9ICdzaWRlJyB8ICdwdXNoJztcblxuLyoqXG4gKiBSZXNwb25zaXZlIGNvbXBvbmVudCBtZWFudCB0byBzcGxpdCBhIGxlZnQgYW5kIHJpZ2h0IGNvbHVtbi5cbiAqXG4gKiBUaGUgbGVmdCBjb2x1bW4gaXMgc21hbGxlciB0aGFuIHRoZSByaWdodCBjb2x1bW4sIHdoaWNoIGNvbnRhaW5zIHRoZSBwcmltYXJ5IGNvbnRlbnQuXG4gKlxuICogUmVxdWlyZXMgYSBUd29Db2x1bW5zQ29udGV4dFN0b3JlIHRvIGJlIHByb3ZpZGVkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtbWFwYm94LWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXBib3gubGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwYm94LmxheW91dC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERieE1hcGJveExheW91dENvbXBvbmVudCBleHRlbmRzIFN1YnNjcmlwdGlvbk9iamVjdCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZChNYXREcmF3ZXJDb250YWluZXIsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICByZWFkb25seSBjb250YWluZXJFbGVtZW50ITogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKE1hdERyYXdlckNvbnRhaW5lcilcbiAgcmVhZG9ubHkgZHJhd2VyQ29udGFpbmVyITogTWF0RHJhd2VyQ29udGFpbmVyO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICByZWFkb25seSBjb250ZW50ITogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIF9yZXNpemVkID0gbmV3IFN1YmplY3Q8UmVzaXplZEV2ZW50PigpO1xuICBwcml2YXRlIF91cGRhdGVNYXJnaW5zID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfZm9yY2VIYXNDb250ZW50ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgX21vZGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERieE1hcGJveExheW91dE1vZGU+KCdzaWRlJyk7XG4gIHByaXZhdGUgX3NpZGUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERieE1hcGJveExheW91dFNpZGU+KCdyaWdodCcpO1xuICBwcml2YXRlIF9vcGVuVG9nZ2xlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSBfY29sb3IgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPERieFRoZW1lQ29sb3I+Pih1bmRlZmluZWQpO1xuICBwcml2YXRlIF90b2dnbGVTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgcmVhZG9ubHkgcmVzaXplZCQgPSB0aGlzLl9yZXNpemVkLmFzT2JzZXJ2YWJsZSgpO1xuICByZWFkb25seSBzaWRlJCA9IHRoaXMuX3NpZGUucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG4gIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPERieE1hcGJveExheW91dE1vZGU+ID0gdGhpcy5fbW9kZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBoYXNDb250ZW50JCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2ZvcmNlSGFzQ29udGVudCwgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5oYXNDb250ZW50JF0pLnBpcGUoXG4gICAgbWFwKChbaGFzQ29udGVudCwgZm9yY2VIYXNDb250ZW50XSkgPT4gaGFzQ29udGVudCB8fCBmb3JjZUhhc0NvbnRlbnQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBvcGVuZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5oYXNDb250ZW50JCwgdGhpcy5fb3BlblRvZ2dsZV0pLnBpcGUoXG4gICAgbWFwKChbaGFzQ29udGVudCwgb3Blbl0pID0+IGhhc0NvbnRlbnQgJiYgb3BlbiksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBvc2l0aW9uJDogT2JzZXJ2YWJsZTwnc3RhcnQnIHwgJ2VuZCc+ID0gdGhpcy5zaWRlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gKHggPT09ICdyaWdodCcgPyAnZW5kJyA6ICdzdGFydCcpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZHJhd2VyQ2xhc3NlcyQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnNpZGUkLCB0aGlzLmRieE1hcGJveE1hcFN0b3JlLmhhc0NvbnRlbnQkLCB0aGlzLm9wZW5lZCRdKS5waXBlKFxuICAgIC8vXG4gICAgbWFwKChbc2lkZSwgaGFzQ29udGVudCwgb3Blbl0pID0+IChoYXNDb250ZW50ID8gJ2hhcy1kcmF3ZXItY29udGVudCcgOiAnbm8tZHJhd2VyLWNvbnRlbnQnKSArIGAgJHtzaWRlfS1kcmF3ZXIgYCArIChvcGVuID8gJ29wZW4tZHJhd2VyJyA6ICcnKSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGRyYXdlckJ1dHRvbkNsYXNzZXMkID0gY29tYmluZUxhdGVzdChbdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5oYXNDb250ZW50JCwgdGhpcy5fY29sb3JdKS5waXBlKFxuICAgIC8vXG4gICAgbWFwKChbaGFzQ29udGVudCwgY29sb3JdKSA9PiBkYnhDb2xvckJhY2tncm91bmQoY29sb3IpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYnV0dG9uSWNvbiQ6IE9ic2VydmFibGU8c3RyaW5nPiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc2lkZSQsIHRoaXMub3BlbmVkJF0pLnBpcGUoXG4gICAgbWFwKChbc2lkZSwgb3BlbmVkXSkgPT4ge1xuICAgICAgbGV0IGljb25zID0gWydjaGV2cm9uX3JpZ2h0JywgJ2NoZXZyb25fbGVmdCddO1xuXG4gICAgICBpZiAoc2lkZSA9PT0gJ2xlZnQnKSB7XG4gICAgICAgIGljb25zID0gaWNvbnMucmV2ZXJzZSgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gb3BlbmVkID8gaWNvbnNbMF0gOiBpY29uc1sxXTtcbiAgICB9KVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGRieE1hcGJveE1hcFN0b3JlOiBEYnhNYXBib3hNYXBTdG9yZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IChcbiAgICAgIHRoaXMuc2lkZSQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgdGhpcy5fcmVzaXplZC5waXBlKFxuICAgICAgICAgICAgdGhyb3R0bGVUaW1lKDEwMCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICAgICAgbWFwKCgpID0+ICdyJyksXG4gICAgICAgICAgICBzdGFydFdpdGgoJ3MnKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKSBhcyBPYnNlcnZhYmxlPCdzJyB8ICdyJz5cbiAgICApLnN1YnNjcmliZSgocmVhc29uKSA9PiB7XG4gICAgICB0aGlzLmRieE1hcGJveE1hcFN0b3JlLm1hcEluc3RhbmNlJC5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgICAgeC5yZXNpemUoKTtcblxuICAgICAgICAvLyBzaWRlIGNoYW5nZWRcbiAgICAgICAgaWYgKHJlYXNvbiA9PT0gJ3MnKSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVNYXJnaW5zLm5leHQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBsZXQgaW5pdCA9IGZhbHNlO1xuXG4gICAgdGhpcy5fdG9nZ2xlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMubW9kZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKG1vZGUpID0+IHtcbiAgICAgICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPHVua25vd24+O1xuXG4gICAgICAgICAgaWYgKG1vZGUgPT09ICdwdXNoJykge1xuICAgICAgICAgICAgb2JzID0gY29tYmluZUxhdGVzdChbdGhpcy5vcGVuZWQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksIHRoaXMuX3VwZGF0ZU1hcmdpbnNdKS5waXBlKFxuICAgICAgICAgICAgICB0YXAoKFtvcGVuZWRdKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHsgcmlnaHQgfSA9IHRoaXMuZHJhd2VyQ29udGFpbmVyLl9jb250ZW50TWFyZ2lucztcblxuICAgICAgICAgICAgICAgIHRoaXMuZHJhd2VyQ29udGFpbmVyLnVwZGF0ZUNvbnRlbnRNYXJnaW5zKCk7XG5cbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGZsaXAgPSBvcGVuZWQgPyAxIDogLTE7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChvcGVuZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgPSB0aGlzLmRyYXdlckNvbnRhaW5lci5fY29udGVudE1hcmdpbnMucmlnaHQ7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHJpZ2h0ID0gKHJpZ2h0IHx8IDApICogZmxpcDtcblxuICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gZWxlbWVudC5jbGllbnRXaWR0aDtcblxuICAgICAgICAgICAgICAgICAgY29uc3QgbWFyZ2luID0ge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0TWFyZ2luOiAwLFxuICAgICAgICAgICAgICAgICAgICByaWdodE1hcmdpbjogcmlnaHQsXG4gICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aDogd2lkdGhcbiAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IGVhc2VUbzogT2JzZXJ2YWJsZTxNYXBib3hFYXNlVG8+ID0gdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5jYWxjdWxhdGVOZXh0Q2VudGVyT2Zmc2V0V2l0aFNjcmVlbk1hcmdpbkNoYW5nZShtYXJnaW4pLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoY2VudGVyKSA9PiAoeyB0bzogeyBjZW50ZXIsIGR1cmF0aW9uOiAzMjAwLCBlc3NlbnRpYWw6IGZhbHNlIH0gfSBhcyBNYXBib3hFYXNlVG8pKVxuICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgdGhpcy5kYnhNYXBib3hNYXBTdG9yZS5zZXRNYXJnaW4ob3BlbmVkID8gbWFyZ2luIDogdW5kZWZpbmVkKTtcblxuICAgICAgICAgICAgICAgICAgaWYgKCFpbml0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGJ4TWFwYm94TWFwU3RvcmUuZWFzZVRvKGVhc2VUbyk7XG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbml0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9icyA9IGNvbWJpbmVMYXRlc3QoW3RoaXMub3BlbmVkJC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLCB0aGlzLl91cGRhdGVNYXJnaW5zXSkucGlwZShcbiAgICAgICAgICAgICAgc3dpdGNoTWFwKChfKSA9PiB0aGlzLmRieE1hcGJveE1hcFN0b3JlLm1hcEluc3RhbmNlJCksXG4gICAgICAgICAgICAgIHRhcCgoeCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZHJhd2VyQ29udGFpbmVyLnVwZGF0ZUNvbnRlbnRNYXJnaW5zKCk7XG4gICAgICAgICAgICAgICAgeC50cmlnZ2VyUmVwYWludCgpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gb2JzO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fcmVzaXplZC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3VwZGF0ZU1hcmdpbnMuY29tcGxldGUoKTtcbiAgICB0aGlzLl9zaWRlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fb3BlblRvZ2dsZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2NvbG9yLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fdG9nZ2xlU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9mb3JjZUhhc0NvbnRlbnQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHRvZ2dsZURyYXdlcihvcGVuPzogYm9vbGVhbikge1xuICAgIGlmIChvcGVuID09IG51bGwpIHtcbiAgICAgIG9wZW4gPSAhdGhpcy5fb3BlblRvZ2dsZS52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLl9vcGVuVG9nZ2xlLm5leHQob3Blbik7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2lkZShzaWRlOiBNYXliZTxEYnhNYXBib3hMYXlvdXRTaWRlPikge1xuICAgIGlmIChzaWRlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX3NpZGUubmV4dChzaWRlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgbW9kZShtb2RlOiBNYXliZTxEYnhNYXBib3hMYXlvdXRNb2RlPikge1xuICAgIGlmIChtb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX21vZGUubmV4dChtb2RlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgb3BlbmVkKG9wZW5lZDogTWF5YmU8Ym9vbGVhbj4pIHtcbiAgICBpZiAob3BlbmVkICE9IG51bGwpIHtcbiAgICAgIHRoaXMuX29wZW5Ub2dnbGUubmV4dChvcGVuZWQpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBoYXNDb250ZW50KGhhc0NvbnRlbnQ6IE1heWJlPGJvb2xlYW4+KSB7XG4gICAgaWYgKGhhc0NvbnRlbnQgIT0gbnVsbCkge1xuICAgICAgdGhpcy5fZm9yY2VIYXNDb250ZW50Lm5leHQoaGFzQ29udGVudCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGRyYXdlckNvbG9yKGNvbG9yOiBNYXliZTxEYnhUaGVtZUNvbG9yPikge1xuICAgIHRoaXMuX2NvbG9yLm5leHQoY29sb3IpO1xuICB9XG5cbiAgb25SZXNpemVkKGV2ZW50OiBSZXNpemVkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXNpemVkLm5leHQoZXZlbnQpO1xuICB9XG59XG4iLCI8bWF0LWRyYXdlci1jb250YWluZXIgI2NvbnRhaW5lckVsZW1lbnQgY2xhc3M9XCJkYngtbWFwYm94LWxheW91dC1jb250YWluZXJcIiBbbmdDbGFzc109XCIoZHJhd2VyQ2xhc3NlcyQgfCBhc3luYykgfHwgJydcIiBbaGFzQmFja2Ryb3BdPVwiZmFsc2VcIj5cbiAgPG1hdC1kcmF3ZXIgY2xhc3M9XCJkYngtbWFwYm94LWxheW91dC1kcmF3ZXJcIiAjZHJhd2VyIFtvcGVuZWRdPVwib3BlbmVkJCB8IGFzeW5jXCIgW21vZGVdPVwiKG1vZGUkIHwgYXN5bmMpIHx8ICdzaWRlJ1wiIFtwb3NpdGlvbl09XCIocG9zaXRpb24kIHwgYXN5bmMpIHx8ICdlbmQnXCI+XG4gICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtbGF5b3V0LWRyYXdlci1jb250ZW50XCIgW25nQ2xhc3NdPVwiKGRyYXdlckJ1dHRvbkNsYXNzZXMkIHwgYXN5bmMpIHx8ICcnXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZHJhd2VyXVwiPjwvbmctY29udGVudD5cbiAgICAgIDxkYngtbWFwYm94LWxheW91dC1kcmF3ZXI+PC9kYngtbWFwYm94LWxheW91dC1kcmF3ZXI+XG4gICAgPC9kaXY+XG4gIDwvbWF0LWRyYXdlcj5cbiAgPG1hdC1kcmF3ZXItY29udGVudCAjY29udGVudCBjbGFzcz1cImRieC1tYXBib3gtbGF5b3V0LWNvbnRlbnRcIiAocmVzaXplZCk9XCJvblJlc2l6ZWQoJGV2ZW50KVwiPlxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVEcmF3ZXIoKVwiIGNsYXNzPVwiZGJ4LW1hcGJveC1sYXlvdXQtZHJhd2VyLWJ1dHRvblwiIFtuZ0NsYXNzXT1cIihkcmF3ZXJCdXR0b25DbGFzc2VzJCB8IGFzeW5jKSB8fCAnJ1wiPlxuICAgICAgPG1hdC1pY29uPnt7IGJ1dHRvbkljb24kIHwgYXN5bmMgfX08L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9tYXQtZHJhd2VyLWNvbnRlbnQ+XG48L21hdC1kcmF3ZXItY29udGFpbmVyPlxuIl19
@@ -0,0 +1,38 @@
1
+ import { shareReplay, map, distinctUntilChanged } from 'rxjs';
2
+ import { Directive, Host } from '@angular/core';
3
+ import { isSameVector } from '@dereekb/util';
4
+ import { SubscriptionObject } from '@dereekb/rxjs';
5
+ import { DbxMapboxLayoutComponent } from './mapbox.layout.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./mapbox.layout.component";
8
+ /**
9
+ * Directive that synchronizes a map's virtual size with the size of the element.
10
+ */
11
+ export class DbxMapboxLayoutVirtualResizeSyncComponent extends SubscriptionObject {
12
+ constructor(dbxMapboxLayoutComponent) {
13
+ super();
14
+ this.dbxMapboxLayoutComponent = dbxMapboxLayoutComponent;
15
+ this.resizedVector$ = this.dbxMapboxLayoutComponent.resized$.pipe(map(() => {
16
+ const element = this.dbxMapboxLayoutComponent.containerElement.nativeElement;
17
+ const { clientWidth, clientHeight } = element;
18
+ return {
19
+ x: clientWidth,
20
+ y: clientHeight
21
+ };
22
+ }), distinctUntilChanged(isSameVector), shareReplay(1));
23
+ }
24
+ ngOnInit() {
25
+ this.dbxMapboxLayoutComponent.dbxMapboxMapStore.setMinimumVirtualViewportSize(this.resizedVector$);
26
+ }
27
+ }
28
+ DbxMapboxLayoutVirtualResizeSyncComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxLayoutVirtualResizeSyncComponent, deps: [{ token: i1.DbxMapboxLayoutComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive });
29
+ DbxMapboxLayoutVirtualResizeSyncComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DbxMapboxLayoutVirtualResizeSyncComponent, selector: "[dbxMapboxLayoutVirtualResizeSync]", usesInheritance: true, ngImport: i0 });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxLayoutVirtualResizeSyncComponent, decorators: [{
31
+ type: Directive,
32
+ args: [{
33
+ selector: '[dbxMapboxLayoutVirtualResizeSync]'
34
+ }]
35
+ }], ctorParameters: function () { return [{ type: i1.DbxMapboxLayoutComponent, decorators: [{
36
+ type: Host
37
+ }] }]; } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmxheW91dC5yZXNpemUuc3luYy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5sYXlvdXQucmVzaXplLnN5bmMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFFckU7O0dBRUc7QUFJSCxNQUFNLE9BQU8seUNBQTBDLFNBQVEsa0JBQWtCO0lBYy9FLFlBQTZCLHdCQUFrRDtRQUM3RSxLQUFLLEVBQUUsQ0FBQztRQURtQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBYnRFLG1CQUFjLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ25FLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDUCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsZ0JBQWdCLENBQUMsYUFBNEIsQ0FBQztZQUM1RixNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLE9BQU8sQ0FBQztZQUM5QyxPQUFPO2dCQUNMLENBQUMsRUFBRSxXQUFXO2dCQUNkLENBQUMsRUFBRSxZQUFZO2FBQ2hCLENBQUM7UUFDSixDQUFDLENBQUMsRUFDRixvQkFBb0IsQ0FBQyxZQUFZLENBQUMsRUFDbEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFJRixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDckcsQ0FBQzs7dUlBcEJVLHlDQUF5QzsySEFBekMseUNBQXlDOzRGQUF6Qyx5Q0FBeUM7a0JBSHJELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9DQUFvQztpQkFDL0M7OzBCQWVjLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaGFyZVJlcGxheSwgbWFwLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzU2FtZVZlY3RvciB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uT2JqZWN0IH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBEYnhNYXBib3hMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL21hcGJveC5sYXlvdXQuY29tcG9uZW50JztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdGhhdCBzeW5jaHJvbml6ZXMgYSBtYXAncyB2aXJ0dWFsIHNpemUgd2l0aCB0aGUgc2l6ZSBvZiB0aGUgZWxlbWVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieE1hcGJveExheW91dFZpcnR1YWxSZXNpemVTeW5jXSdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4TWFwYm94TGF5b3V0VmlydHVhbFJlc2l6ZVN5bmNDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25PYmplY3QgaW1wbGVtZW50cyBPbkluaXQge1xuICByZWFkb25seSByZXNpemVkVmVjdG9yJCA9IHRoaXMuZGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50LnJlc2l6ZWQkLnBpcGUoXG4gICAgbWFwKCgpID0+IHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmRieE1hcGJveExheW91dENvbXBvbmVudC5jb250YWluZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBjb25zdCB7IGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQgfSA9IGVsZW1lbnQ7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB4OiBjbGllbnRXaWR0aCxcbiAgICAgICAgeTogY2xpZW50SGVpZ2h0XG4gICAgICB9O1xuICAgIH0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKGlzU2FtZVZlY3RvciksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihASG9zdCgpIHJlYWRvbmx5IGRieE1hcGJveExheW91dENvbXBvbmVudDogRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50LmRieE1hcGJveE1hcFN0b3JlLnNldE1pbmltdW1WaXJ0dWFsVmlld3BvcnRTaXplKHRoaXMucmVzaXplZFZlY3RvciQpO1xuICB9XG59XG4iXX0=
@@ -16,9 +16,11 @@ import { NgxMapboxGLModule } from 'ngx-mapbox-gl';
16
16
  import { DbxRouterAnchorModule } from '@dereekb/dbx-web';
17
17
  import { DbxMapboxMarkersComponent } from './mapbox.markers.component';
18
18
  import { DbxMapboxInjectionComponent } from './mapbox.injection.component';
19
+ import { DbxMapboxLayoutVirtualResizeSyncComponent } from './mapbox.layout.resize.sync.directive';
19
20
  import * as i0 from "@angular/core";
20
21
  const declarations = [
21
22
  //
23
+ DbxMapboxLayoutVirtualResizeSyncComponent,
22
24
  DbxMapboxMapDirective,
23
25
  DbxMapboxLayoutComponent,
24
26
  DbxMapboxLayoutDrawerComponent,
@@ -44,6 +46,7 @@ export class DbxMapboxModule {
44
46
  DbxMapboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
45
47
  DbxMapboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxModule, declarations: [
46
48
  //
49
+ DbxMapboxLayoutVirtualResizeSyncComponent,
47
50
  DbxMapboxMapDirective,
48
51
  DbxMapboxLayoutComponent,
49
52
  DbxMapboxLayoutDrawerComponent,
@@ -62,6 +65,7 @@ DbxMapboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
62
65
  DbxRouterAnchorModule,
63
66
  NgxMapboxGLModule], exports: [
64
67
  //
68
+ DbxMapboxLayoutVirtualResizeSyncComponent,
65
69
  DbxMapboxMapDirective,
66
70
  DbxMapboxLayoutComponent,
67
71
  DbxMapboxLayoutDrawerComponent,
@@ -98,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
98
102
  exports: declarations
99
103
  }]
100
104
  }] });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUUzRSxNQUFNLFlBQVksR0FBRztJQUNuQixFQUFFO0lBQ0YscUJBQXFCO0lBQ3JCLHdCQUF3QjtJQUN4Qiw4QkFBOEI7SUFDOUIsMkJBQTJCO0lBQzNCLHNCQUFzQjtJQUN0Qix3QkFBd0I7SUFDeEIseUJBQXlCO0lBQ3pCLHdDQUF3QztDQUN6QyxDQUFDO0FBaUJGLE1BQU0sT0FBTyxlQUFlO0lBQzFCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBdUI7UUFDcEMsT0FBTztZQUNMLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsUUFBUSxFQUFFLE1BQU07aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7NkdBWFUsZUFBZTs4R0FBZixlQUFlO1FBMUIxQixFQUFFO1FBQ0YscUJBQXFCO1FBQ3JCLHdCQUF3QjtRQUN4Qiw4QkFBOEI7UUFDOUIsMkJBQTJCO1FBQzNCLHNCQUFzQjtRQUN0Qix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLHdDQUF3QztRQUt0QyxFQUFFO1FBQ0YsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQiwyQkFBMkI7UUFDM0IsZUFBZTtRQUNmLGFBQWE7UUFDYix3QkFBd0I7UUFDeEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQXJCbkIsRUFBRTtRQUNGLHFCQUFxQjtRQUNyQix3QkFBd0I7UUFDeEIsOEJBQThCO1FBQzlCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6Qix3Q0FBd0M7OEdBa0I3QixlQUFlO1FBYnhCLEVBQUU7UUFDRixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLDJCQUEyQjtRQUMzQixlQUFlO1FBQ2YsYUFBYTtRQUNiLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIsaUJBQWlCOzRGQUtSLGVBQWU7a0JBZjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLDJCQUEyQjt3QkFDM0IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhNYXBib3hNYXBEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5tYXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieE1hcGJveENvbmZpZyB9IGZyb20gJy4vbWFwYm94LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9tYXBib3gubGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBEYnhNYXBib3hMYXlvdXREcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcGJveC5sYXlvdXQuZHJhd2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQW5ndWxhclJlc2l6ZUV2ZW50TW9kdWxlIH0gZnJvbSAnYW5ndWxhci1yZXNpemUtZXZlbnQnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWVudUNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveE1hcFN0b3JlSW5qZWN0aW9uQmxvY2tEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5wcm92aWRlJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWFwYm94R0xNb2R1bGUgfSBmcm9tICduZ3gtbWFwYm94LWdsJztcbmltcG9ydCB7IERieFJvdXRlckFuY2hvck1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWFya2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94LmluamVjdGlvbi5jb21wb25lbnQnO1xuXG5jb25zdCBkZWNsYXJhdGlvbnMgPSBbXG4gIC8vXG4gIERieE1hcGJveE1hcERpcmVjdGl2ZSxcbiAgRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50LFxuICBEYnhNYXBib3hMYXlvdXREcmF3ZXJDb21wb25lbnQsXG4gIERieE1hcGJveEluamVjdGlvbkNvbXBvbmVudCxcbiAgRGJ4TWFwYm94TWVudUNvbXBvbmVudCxcbiAgRGJ4TWFwYm94TWFya2VyQ29tcG9uZW50LFxuICBEYnhNYXBib3hNYXJrZXJzQ29tcG9uZW50LFxuICBEYnhNYXBib3hNYXBTdG9yZUluamVjdGlvbkJsb2NrRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgLy9cbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0U2lkZW5hdk1vZHVsZSxcbiAgICBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQW5ndWxhclJlc2l6ZUV2ZW50TW9kdWxlLFxuICAgIERieFJvdXRlckFuY2hvck1vZHVsZSxcbiAgICBOZ3hNYXBib3hHTE1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnMsXG4gIGV4cG9ydHM6IGRlY2xhcmF0aW9uc1xufSlcbmV4cG9ydCBjbGFzcyBEYnhNYXBib3hNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IERieE1hcGJveENvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RGJ4TWFwYm94TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBEYnhNYXBib3hNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IERieE1hcGJveENvbmZpZyxcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNFLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOztBQUVsRyxNQUFNLFlBQVksR0FBRztJQUNuQixFQUFFO0lBQ0YseUNBQXlDO0lBQ3pDLHFCQUFxQjtJQUNyQix3QkFBd0I7SUFDeEIsOEJBQThCO0lBQzlCLDJCQUEyQjtJQUMzQixzQkFBc0I7SUFDdEIsd0JBQXdCO0lBQ3hCLHlCQUF5QjtJQUN6Qix3Q0FBd0M7Q0FDekMsQ0FBQztBQWlCRixNQUFNLE9BQU8sZUFBZTtJQUMxQixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXVCO1FBQ3BDLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFFBQVEsRUFBRSxNQUFNO2lCQUNqQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzZHQVhVLGVBQWU7OEdBQWYsZUFBZTtRQTNCMUIsRUFBRTtRQUNGLHlDQUF5QztRQUN6QyxxQkFBcUI7UUFDckIsd0JBQXdCO1FBQ3hCLDhCQUE4QjtRQUM5QiwyQkFBMkI7UUFDM0Isc0JBQXNCO1FBQ3RCLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsd0NBQXdDO1FBS3RDLEVBQUU7UUFDRixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLDJCQUEyQjtRQUMzQixlQUFlO1FBQ2YsYUFBYTtRQUNiLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIsaUJBQWlCO1FBdEJuQixFQUFFO1FBQ0YseUNBQXlDO1FBQ3pDLHFCQUFxQjtRQUNyQix3QkFBd0I7UUFDeEIsOEJBQThCO1FBQzlCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6Qix3Q0FBd0M7OEdBa0I3QixlQUFlO1FBYnhCLEVBQUU7UUFDRixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLDJCQUEyQjtRQUMzQixlQUFlO1FBQ2YsYUFBYTtRQUNiLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIsaUJBQWlCOzRGQUtSLGVBQWU7a0JBZjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLDJCQUEyQjt3QkFDM0IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhNYXBib3hNYXBEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5tYXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieE1hcGJveENvbmZpZyB9IGZyb20gJy4vbWFwYm94LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9tYXBib3gubGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBEYnhNYXBib3hMYXlvdXREcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcGJveC5sYXlvdXQuZHJhd2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQW5ndWxhclJlc2l6ZUV2ZW50TW9kdWxlIH0gZnJvbSAnYW5ndWxhci1yZXNpemUtZXZlbnQnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWVudUNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveE1hcFN0b3JlSW5qZWN0aW9uQmxvY2tEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5wcm92aWRlJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWFwYm94R0xNb2R1bGUgfSBmcm9tICduZ3gtbWFwYm94LWdsJztcbmltcG9ydCB7IERieFJvdXRlckFuY2hvck1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWFya2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94LmluamVjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TGF5b3V0VmlydHVhbFJlc2l6ZVN5bmNDb21wb25lbnQgfSBmcm9tICcuL21hcGJveC5sYXlvdXQucmVzaXplLnN5bmMuZGlyZWN0aXZlJztcblxuY29uc3QgZGVjbGFyYXRpb25zID0gW1xuICAvL1xuICBEYnhNYXBib3hMYXlvdXRWaXJ0dWFsUmVzaXplU3luY0NvbXBvbmVudCxcbiAgRGJ4TWFwYm94TWFwRGlyZWN0aXZlLFxuICBEYnhNYXBib3hMYXlvdXRDb21wb25lbnQsXG4gIERieE1hcGJveExheW91dERyYXdlckNvbXBvbmVudCxcbiAgRGJ4TWFwYm94SW5qZWN0aW9uQ29tcG9uZW50LFxuICBEYnhNYXBib3hNZW51Q29tcG9uZW50LFxuICBEYnhNYXBib3hNYXJrZXJDb21wb25lbnQsXG4gIERieE1hcGJveE1hcmtlcnNDb21wb25lbnQsXG4gIERieE1hcGJveE1hcFN0b3JlSW5qZWN0aW9uQmxvY2tEaXJlY3RpdmVcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICAvL1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRTaWRlbmF2TW9kdWxlLFxuICAgIERieEluamVjdGlvbkNvbXBvbmVudE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBBbmd1bGFyUmVzaXplRXZlbnRNb2R1bGUsXG4gICAgRGJ4Um91dGVyQW5jaG9yTW9kdWxlLFxuICAgIE5neE1hcGJveEdMTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9ucyxcbiAgZXhwb3J0czogZGVjbGFyYXRpb25zXG59KVxuZXhwb3J0IGNsYXNzIERieE1hcGJveE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRGJ4TWFwYm94Q29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhNYXBib3hNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieE1hcGJveE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGJ4TWFwYm94Q29uZmlnLFxuICAgICAgICAgIHVzZVZhbHVlOiBjb25maWdcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==