@dereekb/dbx-firebase 9.15.3 → 9.15.5

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.
@@ -7,21 +7,27 @@ import { DbxFirebaseDevelopmentWidgetService } from './development.widget.servic
7
7
  import { DbxFirebaseDevelopmentSchedulerService } from './development.scheduler.service';
8
8
  import { msToSeconds } from '@dereekb/date';
9
9
  import { DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY } from './development.scheduler.widget.component';
10
+ import { DbxFirebaseEmulatorService } from '../firebase';
10
11
  import * as i0 from "@angular/core";
11
12
  import * as i1 from "@dereekb/dbx-web";
12
13
  import * as i2 from "@dereekb/dbx-core";
13
14
  import * as i3 from "./development.widget.service";
14
15
  import * as i4 from "./development.scheduler.service";
15
- import * as i5 from "@dereekb/dbx-form";
16
- import * as i6 from "./development.popup.content.form.component";
17
- import * as i7 from "@angular/common";
16
+ import * as i5 from "../firebase";
17
+ import * as i6 from "@angular/common";
18
+ import * as i7 from "@angular/material/button";
19
+ import * as i8 from "@dereekb/dbx-form";
20
+ import * as i9 from "./development.popup.content.form.component";
18
21
  export class DbxFirebaseDevelopmentPopupContentComponent {
19
- constructor(twoColumnsContextStore, dbxAuthService, dbxFirebaseDevelopmentWidgetService, dbxFirebaseDevelopmentSchedulerService) {
22
+ constructor(twoColumnsContextStore, dbxAuthService, dbxFirebaseDevelopmentWidgetService, dbxFirebaseDevelopmentSchedulerService, dbxFirebaseEmulatorService) {
20
23
  this.twoColumnsContextStore = twoColumnsContextStore;
21
24
  this.dbxAuthService = dbxAuthService;
22
25
  this.dbxFirebaseDevelopmentWidgetService = dbxFirebaseDevelopmentWidgetService;
23
26
  this.dbxFirebaseDevelopmentSchedulerService = dbxFirebaseDevelopmentSchedulerService;
27
+ this.dbxFirebaseEmulatorService = dbxFirebaseEmulatorService;
24
28
  this._backSub = new SubscriptionObject();
29
+ this.showEmulatorButton = this.dbxFirebaseEmulatorService.useEmulators === true;
30
+ this.emulatorUIAnchor = this.dbxFirebaseEmulatorService.emulatorUIAnchor ?? {};
25
31
  this.entries = this.dbxFirebaseDevelopmentWidgetService.getEntries();
26
32
  this._activeEntrySelector = new BehaviorSubject(DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY);
27
33
  this.isLoggedIn$ = this.dbxAuthService.isLoggedIn$;
@@ -58,10 +64,10 @@ export class DbxFirebaseDevelopmentPopupContentComponent {
58
64
  this._activeEntrySelector.next(undefined);
59
65
  }
60
66
  }
61
- DbxFirebaseDevelopmentPopupContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseDevelopmentPopupContentComponent, deps: [{ token: i1.TwoColumnsContextStore }, { token: i2.DbxAuthService }, { token: i3.DbxFirebaseDevelopmentWidgetService }, { token: i4.DbxFirebaseDevelopmentSchedulerService }], target: i0.ɵɵFactoryTarget.Component });
62
- DbxFirebaseDevelopmentPopupContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxFirebaseDevelopmentPopupContentComponent, selector: "dbx-firebase-development-popup-content", providers: [TwoColumnsContextStore], ngImport: i0, template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger dbxActionLogger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"], dependencies: [{ kind: "component", type: i1.DbxWidgetViewComponent, selector: "dbx-widget-view", inputs: ["config"] }, { kind: "component", type: i1.DbxTwoBlocksComponent, selector: "dbx-two-block", inputs: ["fixedTop"] }, { kind: "component", type: i1.DbxTwoColumnComponent, selector: "dbx-two-column", inputs: ["reverseSizing", "inSectionPage"], exportAs: ["columns"] }, { kind: "component", type: i1.DbxTwoColumnRightComponent, selector: "dbx-two-column-right", inputs: ["header", "block", "showBack", "minRightWidth"] }, { kind: "directive", type: i1.DbxTwoColumnFullLeftDirective, selector: "[dbxTwoColumnFullLeft]", inputs: ["dbxTwoColumnFullLeft"] }, { kind: "directive", type: i5.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i5.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "directive", type: i2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i2.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: ["dbxActionAutoTrigger", "triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "fastTrigger", "instantTrigger", "triggerLimit"] }, { kind: "directive", type: i2.DbxActionContextLoggerDirective, selector: "[dbxActionLogger],[dbxActionContextLogger]" }, { kind: "component", type: i6.DbxFirebaseDevelopmentPopupContentFormComponent, selector: "dbx-firebase-development-popup-content-form" }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] });
67
+ DbxFirebaseDevelopmentPopupContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseDevelopmentPopupContentComponent, deps: [{ token: i1.TwoColumnsContextStore }, { token: i2.DbxAuthService }, { token: i3.DbxFirebaseDevelopmentWidgetService }, { token: i4.DbxFirebaseDevelopmentSchedulerService }, { token: i5.DbxFirebaseEmulatorService }], target: i0.ɵɵFactoryTarget.Component });
68
+ DbxFirebaseDevelopmentPopupContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxFirebaseDevelopmentPopupContentComponent, selector: "dbx-firebase-development-popup-content", providers: [TwoColumnsContextStore], ngImport: i0, template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n <div>\n <dbx-anchor [anchor]=\"emulatorUIAnchor\" *ngIf=\"showEmulatorButton\">\n <button mat-flat-button color=\"accent\">Emulator Enabled</button>\n </dbx-anchor>\n </div>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger dbxActionLogger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.DbxWidgetViewComponent, selector: "dbx-widget-view", inputs: ["config"] }, { kind: "component", type: i1.DbxTwoBlocksComponent, selector: "dbx-two-block", inputs: ["fixedTop"] }, { kind: "component", type: i1.DbxTwoColumnComponent, selector: "dbx-two-column", inputs: ["reverseSizing", "inSectionPage"], exportAs: ["columns"] }, { kind: "component", type: i1.DbxTwoColumnRightComponent, selector: "dbx-two-column-right", inputs: ["header", "block", "showBack", "minRightWidth"] }, { kind: "directive", type: i1.DbxTwoColumnFullLeftDirective, selector: "[dbxTwoColumnFullLeft]", inputs: ["dbxTwoColumnFullLeft"] }, { kind: "component", type: i7.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: i1.DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { kind: "directive", type: i8.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i8.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "directive", type: i2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i2.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: ["dbxActionAutoTrigger", "triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "fastTrigger", "instantTrigger", "triggerLimit"] }, { kind: "directive", type: i2.DbxActionContextLoggerDirective, selector: "[dbxActionLogger],[dbxActionContextLogger]" }, { kind: "component", type: i9.DbxFirebaseDevelopmentPopupContentFormComponent, selector: "dbx-firebase-development-popup-content-form" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
63
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseDevelopmentPopupContentComponent, decorators: [{
64
70
  type: Component,
65
- args: [{ selector: 'dbx-firebase-development-popup-content', providers: [TwoColumnsContextStore], template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger dbxActionLogger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"] }]
66
- }], ctorParameters: function () { return [{ type: i1.TwoColumnsContextStore }, { type: i2.DbxAuthService }, { type: i3.DbxFirebaseDevelopmentWidgetService }, { type: i4.DbxFirebaseDevelopmentSchedulerService }]; } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2ZWxvcG1lbnQucG9wdXAuY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9kZXZlbG9wbWVudC9kZXZlbG9wbWVudC5wb3B1cC5jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL2RldmVsb3BtZW50L2RldmVsb3BtZW50LnBvcHVwLmNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBMkIsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQXFCLHNCQUFzQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFN0UsT0FBTyxFQUFFLFdBQVcsRUFBc0Isa0JBQWtCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdEQUFnRCxFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7OztBQVE1RyxNQUFNLE9BQU8sMkNBQTJDO0lBK0N0RCxZQUFxQixzQkFBOEMsRUFBVyxjQUE4QixFQUFXLG1DQUF3RSxFQUFXLHNDQUE4RTtRQUFuUSwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FB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LGNBQWM7UUFDWixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7O3dJQTFFVSwyQ0FBMkM7NEhBQTNDLDJDQUEyQyxpRUFGM0MsQ0FBQyxzQkFBc0IsQ0FBQywwQkNqQnJDLHc4QkFpQkE7MkZERWEsMkNBQTJDO2tCQU52RCxTQUFTOytCQUNFLHdDQUF3QyxhQUd2QyxDQUFDLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGJ4QXV0aFNlcnZpY2UsIEhhbmRsZUFjdGlvbldpdGhDb250ZXh0IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4V2lkZ2V0RGF0YVBhaXIsIFR3b0NvbHVtbnNDb250ZXh0U3RvcmUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IERldmVsb3BtZW50RmlyZWJhc2VGdW5jdGlvblNwZWNpZmllciB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IGZpbHRlck1heWJlLCBJc01vZGlmaWVkRnVuY3Rpb24sIFN1YnNjcmlwdGlvbk9iamVjdCwgdGFwTG9nIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgZmlyc3QsIEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXksIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEZpcmViYXNlRGV2ZWxvcG1lbnRXaWRnZXRTZXJ2aWNlIH0gZnJvbSAnLi9kZXZlbG9wbWVudC53aWRnZXQuc2VydmljZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZURldmVsb3BtZW50U2NoZWR1bGVyU2VydmljZSB9IGZyb20gJy4vZGV2ZWxvcG1lbnQuc2NoZWR1bGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEZXZlbG9wbWVudFBvcHVwQ29udGVudEZvcm1WYWx1ZSB9IGZyb20gJy4vZGV2ZWxvcG1lbnQucG9wdXAuY29udGVudC5mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBtc1RvU2Vjb25kcyB9IGZyb20gJ0BkZXJlZWtiL2RhdGUnO1xuaW1wb3J0IHsgREVWRUxPUE1FTlRfRklSRUJBU0VfU0VSVkVSX1NDSEVEVUxFUl9XSURHRVRfS0VZIH0gZnJvbSAnLi9kZXZlbG9wbWVudC5zY2hlZHVsZXIud2lkZ2V0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RldmVsb3BtZW50LnBvcHVwLmNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZXZlbG9wbWVudC5wb3B1cC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtUd29Db2x1bW5zQ29udGV4dFN0b3JlXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZURldmVsb3BtZW50UG9wdXBDb250ZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9iYWNrU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuXG4gIHJlYWRvbmx5IGVudHJpZXMgPSB0aGlzLmRieEZpcmViYXNlRGV2ZWxvcG1lbnRXaWRnZXRTZXJ2aWNlLmdldEVudHJpZXMoKTtcblxuICBwcml2YXRlIF9hY3RpdmVFbnRyeVNlbGVjdG9yID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxEZXZlbG9wbWVudEZpcmViYXNlRnVuY3Rpb25TcGVjaWZpZXI+PihERVZFTE9QTUVOVF9GSVJFQkFTRV9TRVJWRVJfU0NIRURVTEVSX1dJREdFVF9LRVkpO1xuXG4gIHJlYWRvbmx5IGlzTG9nZ2VkSW4kID0gdGhpcy5kYnhBdXRoU2VydmljZS5pc0xvZ2dlZEluJDtcblxuICByZWFkb25seSBlbnRyaWVzJCA9IHRoaXMuaXNMb2dnZWRJbiQucGlwZShcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIG1hcCgoaXNMb2dnZWRJbikgPT4gdGhpcy5lbnRyaWVzKSxcbiAgICB0YXBMb2coJ0VudHJpZXMnKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGZvcm1Db25maWckID0gdGhpcy5lbnRyaWVzJC5waXBlKG1hcCgoZW50cmllcykgPT4gKHsgZW50cmllcyB9KSkpO1xuICByZWFkb25seSBhY3RpdmVFbnRyeVNlbGVjdG9yJCA9IHRoaXMuX2FjdGl2ZUVudHJ5U2VsZWN0b3IucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcbiAgcmVhZG9ubHkgY3VycmVudEFjdGl2ZUVudHJ5JCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuZW50cmllcyQsIHRoaXMuYWN0aXZlRW50cnlTZWxlY3RvciRdKS5waXBlKFxuICAgIG1hcCgoW2VudHJpZXMsIHNlbGVjdG9yXSkgPT4gKHNlbGVjdG9yID8gZW50cmllcy5maW5kKChlKSA9PiBlLndpZGdldC50eXBlID09PSBzZWxlY3RvcikgOiB1bmRlZmluZWQpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHNob3dSaWdodCQgPSB0aGlzLmN1cnJlbnRBY3RpdmVFbnRyeSQucGlwZShtYXAoKHgpID0+IHggIT0gbnVsbCkpO1xuICByZWFkb25seSBhY3RpdmVFbnRyeSQgPSB0aGlzLmN1cnJlbnRBY3RpdmVFbnRyeSQucGlwZShmaWx0ZXJNYXliZSgpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgcmlnaHRUaXRsZSQgPSB0aGlzLmFjdGl2ZUVudHJ5JC5waXBlKG1hcCgoeCkgPT4geC5sYWJlbCkpO1xuICByZWFkb25seSB3aWRnZXRDb25maWckOiBPYnNlcnZhYmxlPERieFdpZGdldERhdGFQYWlyPiA9IHRoaXMuYWN0aXZlRW50cnkkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiAoeyBkYXRhOiB1bmRlZmluZWQsIHR5cGU6IHgud2lkZ2V0LnR5cGUgfSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgc2NoZWR1bGVyUnVubmluZyQgPSB0aGlzLmRieEZpcmViYXNlRGV2ZWxvcG1lbnRTY2hlZHVsZXJTZXJ2aWNlLnJ1bm5pbmckO1xuICByZWFkb25seSBzY2hlZHVsZXJJbnRlcnZhbCQgPSB0aGlzLmRieEZpcmViYXNlRGV2ZWxvcG1lbnRTY2hlZHVsZXJTZXJ2aWNlLnRpbWVySW50ZXJ2YWwkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiBtc1RvU2Vjb25kcyh4KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgc2NoZWR1bGVyRXJyb3IkID0gdGhpcy5kYnhGaXJlYmFzZURldmVsb3BtZW50U2NoZWR1bGVyU2VydmljZS5lcnJvciQucGlwZShcbiAgICBtYXAoKHgpID0+ICh4ID8gJ0Vycm9yIE9jY3VyZWQnIDogJ09rJykpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZm9ybURhdGEkOiBPYnNlcnZhYmxlPERieEZpcmViYXNlRGV2ZWxvcG1lbnRQb3B1cENvbnRlbnRGb3JtVmFsdWU+ID0gdGhpcy5fYWN0aXZlRW50cnlTZWxlY3Rvci5waXBlKFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgbWFwKChzcGVjaWZpZXIpID0+ICh7IHNwZWNpZmllciB9KSlcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSB0d29Db2x1bW5zQ29udGV4dFN0b3JlOiBUd29Db2x1bW5zQ29udGV4dFN0b3JlLCByZWFkb25seSBkYnhBdXRoU2VydmljZTogRGJ4QXV0aFNlcnZpY2UsIHJlYWRvbmx5IGRieEZpcmViYXNlRGV2ZWxvcG1lbnRXaWRnZXRTZXJ2aWNlOiBEYnhGaXJlYmFzZURldmVsb3BtZW50V2lkZ2V0U2VydmljZSwgcmVhZG9ubHkgZGJ4RmlyZWJhc2VEZXZlbG9wbWVudFNjaGVkdWxlclNlcnZpY2U6IERieEZpcmViYXNlRGV2ZWxvcG1lbnRTY2hlZHVsZXJTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudHdvQ29sdW1uc0NvbnRleHRTdG9yZS5zZXRTaG93UmlnaHQodGhpcy5zaG93UmlnaHQkKTtcbiAgICB0aGlzLl9iYWNrU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMudHdvQ29sdW1uc0NvbnRleHRTdG9yZS5iYWNrJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZlRW50cnlTZWxlY3Rvci5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcmVhZG9ubHkgaGFuZGxlRm9ybVVwZGF0ZTogSGFuZGxlQWN0aW9uV2l0aENvbnRleHQ8RGJ4RmlyZWJhc2VEZXZlbG9wbWVudFBvcHVwQ29udGVudEZvcm1WYWx1ZSwgdm9pZD4gPSAodmFsdWUsIGNvbnRleHQpID0+IHtcbiAgICB0aGlzLl9hY3RpdmVFbnRyeVNlbGVjdG9yLm5leHQodmFsdWUuc3BlY2lmaWVyKTtcbiAgICBjb250ZXh0LnN1Y2Nlc3MoKTtcbiAgfTtcblxuICByZWFkb25seSBpc0Zvcm1Nb2RpZmllZDogSXNNb2RpZmllZEZ1bmN0aW9uPERieEZpcmViYXNlRGV2ZWxvcG1lbnRQb3B1cENvbnRlbnRGb3JtVmFsdWU+ID0gKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUVudHJ5U2VsZWN0b3IucGlwZShcbiAgICAgIG1hcCgoY3VycmVudFNlbGVjdG9yKSA9PiB2YWx1ZS5zcGVjaWZpZXIgIT09IGN1cnJlbnRTZWxlY3RvciksXG4gICAgICBmaXJzdCgpXG4gICAgKTtcbiAgfTtcblxuICBjbGVhclNlbGVjdGlvbigpIHtcbiAgICB0aGlzLl9hY3RpdmVFbnRyeVNlbGVjdG9yLm5leHQodW5kZWZpbmVkKTtcbiAgfVxufVxuIiwiPGRieC10d28tY29sdW1uIGNsYXNzPVwiZGJ4LWZpcmViYXNlLWRldmVsb3BtZW50LXBvcHVwLWNvbnRlbnRcIiBbZGJ4VHdvQ29sdW1uRnVsbExlZnRdPVwidHJ1ZVwiPlxuICA8ZGJ4LXR3by1ibG9jayBsZWZ0PlxuICAgIDxkaXY+XG4gICAgICA8aDQ+SW5mbzwvaDQ+XG4gICAgICA8cD5TY2hlZHVsZXIgKFJ1bm5pbmcpOiB7eyBzY2hlZHVsZXJSdW5uaW5nJCB8IGFzeW5jIH19IDoge3sgc2NoZWR1bGVySW50ZXJ2YWwkIHwgYXN5bmMgfX1zIDoge3sgc2NoZWR1bGVyRXJyb3IkIHwgYXN5bmMgfX08L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxoND5Ub29sczwvaDQ+XG4gICAgICA8ZGl2IGRieEFjdGlvbiBkYnhBY3Rpb25FbmZvcmNlTW9kaWZpZWQgZGJ4QWN0aW9uQXV0b1RyaWdnZXIgaW5zdGFudFRyaWdnZXIgZGJ4QWN0aW9uTG9nZ2VyIFtkYnhBY3Rpb25IYW5kbGVyXT1cImhhbmRsZUZvcm1VcGRhdGVcIj5cbiAgICAgICAgPGRieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50LWZvcm0gZGJ4QWN0aW9uRm9ybSBbZGJ4Rm9ybVNvdXJjZV09XCJmb3JtRGF0YSRcIiBkYnhGb3JtU291cmNlTW9kZT1cImFsd2F5c1wiIFtkYnhBY3Rpb25Gb3JtTW9kaWZpZWRdPVwiaXNGb3JtTW9kaWZpZWRcIiBbY29uZmlnXT1cImZvcm1Db25maWckIHwgYXN5bmNcIj48L2RieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50LWZvcm0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kYngtdHdvLWJsb2NrPlxuICA8ZGJ4LXR3by1jb2x1bW4tcmlnaHQgcmlnaHQgW2hlYWRlcl09XCIocmlnaHRUaXRsZSQgfCBhc3luYykgfHwgJydcIj5cbiAgICA8ZGJ4LXdpZGdldC12aWV3IFtjb25maWddPVwid2lkZ2V0Q29uZmlnJCB8IGFzeW5jXCI+PC9kYngtd2lkZ2V0LXZpZXc+XG4gIDwvZGJ4LXR3by1jb2x1bW4tcmlnaHQ+XG48L2RieC10d28tY29sdW1uPlxuIl19
71
+ args: [{ selector: 'dbx-firebase-development-popup-content', providers: [TwoColumnsContextStore], template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n <div>\n <dbx-anchor [anchor]=\"emulatorUIAnchor\" *ngIf=\"showEmulatorButton\">\n <button mat-flat-button color=\"accent\">Emulator Enabled</button>\n </dbx-anchor>\n </div>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger dbxActionLogger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"] }]
72
+ }], ctorParameters: function () { return [{ type: i1.TwoColumnsContextStore }, { type: i2.DbxAuthService }, { type: i3.DbxFirebaseDevelopmentWidgetService }, { type: i4.DbxFirebaseDevelopmentSchedulerService }, { type: i5.DbxFirebaseEmulatorService }]; } });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2ZWxvcG1lbnQucG9wdXAuY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9kZXZlbG9wbWVudC9kZXZlbG9wbWVudC5wb3B1cC5jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL2RldmVsb3BtZW50L2RldmVsb3BtZW50LnBvcHVwLmNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQixjQUFjLEVBQTJCLE1BQU0sbUJBQW1CLENBQUM7QUFDN0YsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFxQixzQkFBc0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTdFLE9BQU8sRUFBRSxXQUFXLEVBQXNCLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RixPQUFPLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNqSCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRixPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxnREFBZ0QsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7QUFRekQsTUFBTSxPQUFPLDJDQUEyQztJQWtEdEQsWUFBcUIsc0JBQThDLEVBQVcsY0FBOEIsRUFBVyxtQ0FBd0Us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LElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1RSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBY0QsY0FBYztRQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7d0lBN0VVLDJDQUEyQzs0SEFBM0MsMkNBQTJDLGlFQUYzQyxDQUFDLHNCQUFzQixDQUFDLDBCQ2xCckMseXBDQXNCQTsyRkRGYSwyQ0FBMkM7a0JBTnZELFNBQVM7K0JBQ0Usd0NBQXdDLGFBR3ZDLENBQUMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGlja2FibGVBbmNob3IsIERieEF1dGhTZXJ2aWNlLCBIYW5kbGVBY3Rpb25XaXRoQ29udGV4dCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieFdpZGdldERhdGFQYWlyLCBUd29Db2x1bW5zQ29udGV4dFN0b3JlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBEZXZlbG9wbWVudEZpcmViYXNlRnVuY3Rpb25TcGVjaWZpZXIgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBmaWx0ZXJNYXliZSwgSXNNb2RpZmllZEZ1bmN0aW9uLCBTdWJzY3JpcHRpb25PYmplY3QsIHRhcExvZyB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGZpcnN0LCBCZWhhdmlvclN1YmplY3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHNoYXJlUmVwbGF5LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZURldmVsb3BtZW50V2lkZ2V0U2VydmljZSB9IGZyb20gJy4vZGV2ZWxvcG1lbnQud2lkZ2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VEZXZlbG9wbWVudFNjaGVkdWxlclNlcnZpY2UgfSBmcm9tICcuL2RldmVsb3BtZW50LnNjaGVkdWxlci5zZXJ2aWNlJztcbmltcG9ydCB7IERieEZpcmViYXNlRGV2ZWxvcG1lbnRQb3B1cENvbnRlbnRGb3JtVmFsdWUgfSBmcm9tICcuL2RldmVsb3BtZW50LnBvcHVwLmNvbnRlbnQuZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgbXNUb1NlY29uZHMgfSBmcm9tICdAZGVyZWVrYi9kYXRlJztcbmltcG9ydCB7IERFVkVMT1BNRU5UX0ZJUkVCQVNFX1NFUlZFUl9TQ0hFRFVMRVJfV0lER0VUX0tFWSB9IGZyb20gJy4vZGV2ZWxvcG1lbnQuc2NoZWR1bGVyLndpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VFbXVsYXRvclNlcnZpY2UgfSBmcm9tICcuLi9maXJlYmFzZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RldmVsb3BtZW50LnBvcHVwLmNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZXZlbG9wbWVudC5wb3B1cC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtUd29Db2x1bW5zQ29udGV4dFN0b3JlXVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZURldmVsb3BtZW50UG9wdXBDb250ZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9iYWNrU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuXG4gIHJlYWRvbmx5IHNob3dFbXVsYXRvckJ1dHRvbiA9IHRoaXMuZGJ4RmlyZWJhc2VFbXVsYXRvclNlcnZpY2UudXNlRW11bGF0b3JzID09PSB0cnVlO1xuICByZWFkb25seSBlbXVsYXRvclVJQW5jaG9yOiBDbGlja2FibGVBbmNob3IgPSB0aGlzLmRieEZpcmViYXNlRW11bGF0b3JTZXJ2aWNlLmVtdWxhdG9yVUlBbmNob3IgPz8ge307XG5cbiAgcmVhZG9ubHkgZW50cmllcyA9IHRoaXMuZGJ4RmlyZWJhc2VEZXZlbG9wbWVudFdpZGdldFNlcnZpY2UuZ2V0RW50cmllcygpO1xuXG4gIHByaXZhdGUgX2FjdGl2ZUVudHJ5U2VsZWN0b3IgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPERldmVsb3BtZW50RmlyZWJhc2VGdW5jdGlvblNwZWNpZmllcj4+KERFVkVMT1BNRU5UX0ZJUkVCQVNFX1NFUlZFUl9TQ0hFRFVMRVJfV0lER0VUX0tFWSk7XG5cbiAgcmVhZG9ubHkgaXNMb2dnZWRJbiQgPSB0aGlzLmRieEF1dGhTZXJ2aWNlLmlzTG9nZ2VkSW4kO1xuXG4gIHJlYWRvbmx5IGVudHJpZXMkID0gdGhpcy5pc0xvZ2dlZEluJC5waXBlKFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgbWFwKChpc0xvZ2dlZEluKSA9PiB0aGlzLmVudHJpZXMpLFxuICAgIHRhcExvZygnRW50cmllcycpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZm9ybUNvbmZpZyQgPSB0aGlzLmVudHJpZXMkLnBpcGUobWFwKChlbnRyaWVzKSA9PiAoeyBlbnRyaWVzIH0pKSk7XG4gIHJlYWRvbmx5IGFjdGl2ZUVudHJ5U2VsZWN0b3IkID0gdGhpcy5fYWN0aXZlRW50cnlTZWxlY3Rvci5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuICByZWFkb25seSBjdXJyZW50QWN0aXZlRW50cnkkID0gY29tYmluZUxhdGVzdChbdGhpcy5lbnRyaWVzJCwgdGhpcy5hY3RpdmVFbnRyeVNlbGVjdG9yJF0pLnBpcGUoXG4gICAgbWFwKChbZW50cmllcywgc2VsZWN0b3JdKSA9PiAoc2VsZWN0b3IgPyBlbnRyaWVzLmZpbmQoKGUpID0+IGUud2lkZ2V0LnR5cGUgPT09IHNlbGVjdG9yKSA6IHVuZGVmaW5lZCkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgc2hvd1JpZ2h0JCA9IHRoaXMuY3VycmVudEFjdGl2ZUVudHJ5JC5waXBlKG1hcCgoeCkgPT4geCAhPSBudWxsKSk7XG4gIHJlYWRvbmx5IGFjdGl2ZUVudHJ5JCA9IHRoaXMuY3VycmVudEFjdGl2ZUVudHJ5JC5waXBlKGZpbHRlck1heWJlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSByaWdodFRpdGxlJCA9IHRoaXMuYWN0aXZlRW50cnkkLnBpcGUobWFwKCh4KSA9PiB4LmxhYmVsKSk7XG4gIHJlYWRvbmx5IHdpZGdldENvbmZpZyQ6IE9ic2VydmFibGU8RGJ4V2lkZ2V0RGF0YVBhaXI+ID0gdGhpcy5hY3RpdmVFbnRyeSQucGlwZShcbiAgICBtYXAoKHgpID0+ICh7IGRhdGE6IHVuZGVmaW5lZCwgdHlwZTogeC53aWRnZXQudHlwZSB9KSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzY2hlZHVsZXJSdW5uaW5nJCA9IHRoaXMuZGJ4RmlyZWJhc2VEZXZlbG9wbWVudFNjaGVkdWxlclNlcnZpY2UucnVubmluZyQ7XG4gIHJlYWRvbmx5IHNjaGVkdWxlckludGVydmFsJCA9IHRoaXMuZGJ4RmlyZWJhc2VEZXZlbG9wbWVudFNjaGVkdWxlclNlcnZpY2UudGltZXJJbnRlcnZhbCQucGlwZShcbiAgICBtYXAoKHgpID0+IG1zVG9TZWNvbmRzKHgpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuICByZWFkb25seSBzY2hlZHVsZXJFcnJvciQgPSB0aGlzLmRieEZpcmViYXNlRGV2ZWxvcG1lbnRTY2hlZHVsZXJTZXJ2aWNlLmVycm9yJC5waXBlKFxuICAgIG1hcCgoeCkgPT4gKHggPyAnRXJyb3IgT2NjdXJlZCcgOiAnT2snKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBmb3JtRGF0YSQ6IE9ic2VydmFibGU8RGJ4RmlyZWJhc2VEZXZlbG9wbWVudFBvcHVwQ29udGVudEZvcm1WYWx1ZT4gPSB0aGlzLl9hY3RpdmVFbnRyeVNlbGVjdG9yLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBtYXAoKHNwZWNpZmllcikgPT4gKHsgc3BlY2lmaWVyIH0pKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHR3b0NvbHVtbnNDb250ZXh0U3RvcmU6IFR3b0NvbHVtbnNDb250ZXh0U3RvcmUsIHJlYWRvbmx5IGRieEF1dGhTZXJ2aWNlOiBEYnhBdXRoU2VydmljZSwgcmVhZG9ubHkgZGJ4RmlyZWJhc2VEZXZlbG9wbWVudFdpZGdldFNlcnZpY2U6IERieEZpcmViYXNlRGV2ZWxvcG1lbnRXaWRnZXRTZXJ2aWNlLCByZWFkb25seSBkYnhGaXJlYmFzZURldmVsb3BtZW50U2NoZWR1bGVyU2VydmljZTogRGJ4RmlyZWJhc2VEZXZlbG9wbWVudFNjaGVkdWxlclNlcnZpY2UsIHJlYWRvbmx5IGRieEZpcmViYXNlRW11bGF0b3JTZXJ2aWNlOiBEYnhGaXJlYmFzZUVtdWxhdG9yU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnR3b0NvbHVtbnNDb250ZXh0U3RvcmUuc2V0U2hvd1JpZ2h0KHRoaXMuc2hvd1JpZ2h0JCk7XG4gICAgdGhpcy5fYmFja1N1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLnR3b0NvbHVtbnNDb250ZXh0U3RvcmUuYmFjayQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2FjdGl2ZUVudHJ5U2VsZWN0b3IuY29tcGxldGUoKTtcbiAgfVxuXG4gIHJlYWRvbmx5IGhhbmRsZUZvcm1VcGRhdGU6IEhhbmRsZUFjdGlvbldpdGhDb250ZXh0PERieEZpcmViYXNlRGV2ZWxvcG1lbnRQb3B1cENvbnRlbnRGb3JtVmFsdWUsIHZvaWQ+ID0gKHZhbHVlLCBjb250ZXh0KSA9PiB7XG4gICAgdGhpcy5fYWN0aXZlRW50cnlTZWxlY3Rvci5uZXh0KHZhbHVlLnNwZWNpZmllcik7XG4gICAgY29udGV4dC5zdWNjZXNzKCk7XG4gIH07XG5cbiAgcmVhZG9ubHkgaXNGb3JtTW9kaWZpZWQ6IElzTW9kaWZpZWRGdW5jdGlvbjxEYnhGaXJlYmFzZURldmVsb3BtZW50UG9wdXBDb250ZW50Rm9ybVZhbHVlPiA9ICh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVFbnRyeVNlbGVjdG9yLnBpcGUoXG4gICAgICBtYXAoKGN1cnJlbnRTZWxlY3RvcikgPT4gdmFsdWUuc3BlY2lmaWVyICE9PSBjdXJyZW50U2VsZWN0b3IpLFxuICAgICAgZmlyc3QoKVxuICAgICk7XG4gIH07XG5cbiAgY2xlYXJTZWxlY3Rpb24oKSB7XG4gICAgdGhpcy5fYWN0aXZlRW50cnlTZWxlY3Rvci5uZXh0KHVuZGVmaW5lZCk7XG4gIH1cbn1cbiIsIjxkYngtdHdvLWNvbHVtbiBjbGFzcz1cImRieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50XCIgW2RieFR3b0NvbHVtbkZ1bGxMZWZ0XT1cInRydWVcIj5cbiAgPGRieC10d28tYmxvY2sgbGVmdD5cbiAgICA8ZGl2PlxuICAgICAgPGg0PkluZm88L2g0PlxuICAgICAgPHA+U2NoZWR1bGVyIChSdW5uaW5nKToge3sgc2NoZWR1bGVyUnVubmluZyQgfCBhc3luYyB9fSA6IHt7IHNjaGVkdWxlckludGVydmFsJCB8IGFzeW5jIH19cyA6IHt7IHNjaGVkdWxlckVycm9yJCB8IGFzeW5jIH19PC9wPlxuICAgICAgPGRpdj5cbiAgICAgICAgPGRieC1hbmNob3IgW2FuY2hvcl09XCJlbXVsYXRvclVJQW5jaG9yXCIgKm5nSWY9XCJzaG93RW11bGF0b3JCdXR0b25cIj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cImFjY2VudFwiPkVtdWxhdG9yIEVuYWJsZWQ8L2J1dHRvbj5cbiAgICAgICAgPC9kYngtYW5jaG9yPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxoND5Ub29sczwvaDQ+XG4gICAgICA8ZGl2IGRieEFjdGlvbiBkYnhBY3Rpb25FbmZvcmNlTW9kaWZpZWQgZGJ4QWN0aW9uQXV0b1RyaWdnZXIgaW5zdGFudFRyaWdnZXIgZGJ4QWN0aW9uTG9nZ2VyIFtkYnhBY3Rpb25IYW5kbGVyXT1cImhhbmRsZUZvcm1VcGRhdGVcIj5cbiAgICAgICAgPGRieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50LWZvcm0gZGJ4QWN0aW9uRm9ybSBbZGJ4Rm9ybVNvdXJjZV09XCJmb3JtRGF0YSRcIiBkYnhGb3JtU291cmNlTW9kZT1cImFsd2F5c1wiIFtkYnhBY3Rpb25Gb3JtTW9kaWZpZWRdPVwiaXNGb3JtTW9kaWZpZWRcIiBbY29uZmlnXT1cImZvcm1Db25maWckIHwgYXN5bmNcIj48L2RieC1maXJlYmFzZS1kZXZlbG9wbWVudC1wb3B1cC1jb250ZW50LWZvcm0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kYngtdHdvLWJsb2NrPlxuICA8ZGJ4LXR3by1jb2x1bW4tcmlnaHQgcmlnaHQgW2hlYWRlcl09XCIocmlnaHRUaXRsZSQgfCBhc3luYykgfHwgJydcIj5cbiAgICA8ZGJ4LXdpZGdldC12aWV3IFtjb25maWddPVwid2lkZ2V0Q29uZmlnJCB8IGFzeW5jXCI+PC9kYngtd2lkZ2V0LXZpZXc+XG4gIDwvZGJ4LXR3by1jb2x1bW4tcmlnaHQ+XG48L2RieC10d28tY29sdW1uPlxuIl19
@@ -1,3 +1,3 @@
1
1
  export class DbxFirebaseParsedEmulatorsConfig {
2
2
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW11bGF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvZmlyZWJhc2UvZW11bGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDQSxNQUFNLE9BQWdCLGdDQUFnQztDQU9yRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZyB7XG4gIC8qKlxuICAgKiBQb3J0IHRvIHRhcmdldC5cbiAgICovXG4gIHBvcnQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIERlZmF1bHRzIHRvIGxvY2FsaG9zdCBpZiBub3QgcHJvdmlkZWQuXG4gICAqL1xuICBob3N0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSB0aGUgZW11bGF0b3JzLlxuICAgKi9cbiAgdXNlRW11bGF0b3JzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmF1bHQgaG9zdCB0byB0YXJnZXQuIERlZmF1bHRzIHRvIGxvY2FsaG9zdCBpZiBub3QgcHJvdmlkZWQuXG4gICAqL1xuICBob3N0Pzogc3RyaW5nO1xuICAvKipcbiAgICogZW11bGF0b3IgVUkgY29uZmlndXJhdGlvblxuICAgKi9cbiAgdWk/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogQXV0aCBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBhdXRoPzogRGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZztcbiAgLyoqXG4gICAqIEZpcmVzdG9yZSBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBmaXJlc3RvcmU/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogRmlyZXN0b3JlIGVtdWxhdG9yIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHN0b3JhZ2U/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogRnVuY3Rpb25zIGVtdWxhdG9yIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIGZ1bmN0aW9ucz86IERieEZpcmViYXNlRW11bGF0b3JDb25maWc7XG4gIC8qKlxuICAgKiBEYXRhYmFzZSBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBkYXRhYmFzZT86IERieEZpcmViYXNlRW11bGF0b3JDb25maWc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYnhGaXJlYmFzZVBhcnNlZEVtdWxhdG9yc0NvbmZpZyBpbXBsZW1lbnRzIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnIHtcbiAgdXNlRW11bGF0b3JzPzogYm9vbGVhbjtcbiAgYXV0aD86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xuICBmaXJlc3RvcmU/OiBSZXF1aXJlZDxEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnPjtcbiAgc3RvcmFnZT86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xuICBmdW5jdGlvbnM/OiBSZXF1aXJlZDxEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnPjtcbiAgZGF0YWJhc2U/OiBSZXF1aXJlZDxEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnPjtcbn1cbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW11bGF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvZmlyZWJhc2UvZW11bGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDQSxNQUFNLE9BQWdCLGdDQUFnQztDQVNyRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZyB7XG4gIC8qKlxuICAgKiBQb3J0IHRvIHRhcmdldC5cbiAgICovXG4gIHBvcnQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIERlZmF1bHRzIHRvIGxvY2FsaG9zdCBpZiBub3QgcHJvdmlkZWQuXG4gICAqL1xuICBob3N0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIGVuYWJsZSB0aGUgZW11bGF0b3JzLlxuICAgKi9cbiAgdXNlRW11bGF0b3JzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmF1bHQgaG9zdCB0byB0YXJnZXQuIERlZmF1bHRzIHRvIGxvY2FsaG9zdCBpZiBub3QgcHJvdmlkZWQuXG4gICAqL1xuICBob3N0Pzogc3RyaW5nO1xuICAvKipcbiAgICogZW11bGF0b3IgVUkgY29uZmlndXJhdGlvblxuICAgKi9cbiAgdWk/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogQXV0aCBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBhdXRoPzogRGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZztcbiAgLyoqXG4gICAqIEZpcmVzdG9yZSBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBmaXJlc3RvcmU/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogRmlyZXN0b3JlIGVtdWxhdG9yIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHN0b3JhZ2U/OiBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnO1xuICAvKipcbiAgICogRnVuY3Rpb25zIGVtdWxhdG9yIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIGZ1bmN0aW9ucz86IERieEZpcmViYXNlRW11bGF0b3JDb25maWc7XG4gIC8qKlxuICAgKiBEYXRhYmFzZSBlbXVsYXRvciBjb25maWd1cmF0aW9uXG4gICAqL1xuICBkYXRhYmFzZT86IERieEZpcmViYXNlRW11bGF0b3JDb25maWc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYnhGaXJlYmFzZVBhcnNlZEVtdWxhdG9yc0NvbmZpZyBpbXBsZW1lbnRzIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnIHtcbiAgYWJzdHJhY3QgdXNlRW11bGF0b3JzOiBib29sZWFuO1xuICBob3N0Pzogc3RyaW5nO1xuICB1aT86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xuICBhdXRoPzogUmVxdWlyZWQ8RGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZz47XG4gIGZpcmVzdG9yZT86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xuICBzdG9yYWdlPzogUmVxdWlyZWQ8RGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZz47XG4gIGZ1bmN0aW9ucz86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xuICBkYXRhYmFzZT86IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+O1xufVxuIl19
@@ -12,6 +12,7 @@ export class DbxFirebaseEmulatorModule {
12
12
  }
13
13
  const finalConfig = {
14
14
  useEmulators: config.useEmulators !== false,
15
+ ui: emulatorConfig(config.ui),
15
16
  auth: emulatorConfig(config.auth),
16
17
  firestore: emulatorConfig(config.firestore),
17
18
  storage: emulatorConfig(config.storage),
@@ -35,4 +36,4 @@ DbxFirebaseEmulatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0
35
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseEmulatorModule, decorators: [{
36
37
  type: NgModule
37
38
  }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UuZW11bGF0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvZmlyZWJhc2UvZmlyZWJhc2UuZW11bGF0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBeUQsZ0NBQWdDLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3RIOztHQUVHO0FBRUgsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWtDO1FBQy9DLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksV0FBVyxDQUFDO1FBRS9DLFNBQVMsY0FBYyxDQUFDLFFBQTBDO1lBQ2hFLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxJQUFJLFdBQVcsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDNUYsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFxQztZQUNwRCxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVksS0FBSyxLQUFLO1lBQzNDLElBQUksRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNqQyxTQUFTLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFDM0MsT0FBTyxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ3ZDLFNBQVMsRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUMzQyxRQUFRLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7U0FDMUMsQ0FBQztRQUVGLE9BQU87WUFDTCxRQUFRLEVBQUUseUJBQXlCO1lBQ25DLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZ0NBQWdDO29CQUN6QyxRQUFRLEVBQUUsV0FBVztpQkFDdEI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOztzSEExQlUseUJBQXlCO3VIQUF6Qix5QkFBeUI7dUhBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQURyQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERieEZpcmViYXNlRW11bGF0b3JDb25maWcsIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnLCBEYnhGaXJlYmFzZVBhcnNlZEVtdWxhdG9yc0NvbmZpZyB9IGZyb20gJy4vZW11bGF0b3JzJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbi8qKlxuICogVXNlZCB0byBjb25maWd1cmUgdGhlIERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnIHByb3ZpZGVyLlxuICovXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlRW11bGF0b3JNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IERieEZpcmViYXNlRW11bGF0b3JzQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhGaXJlYmFzZUVtdWxhdG9yTW9kdWxlPiB7XG4gICAgY29uc3QgZGVmYXVsdEhvc3QgPSBjb25maWcuaG9zdCA/PyAnbG9jYWxob3N0JztcblxuICAgIGZ1bmN0aW9uIGVtdWxhdG9yQ29uZmlnKGVtdWxhdG9yOiBNYXliZTxEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnPik6IFJlcXVpcmVkPERieEZpcmViYXNlRW11bGF0b3JDb25maWc+IHwgdW5kZWZpbmVkIHtcbiAgICAgIHJldHVybiBlbXVsYXRvciA/IHsgaG9zdDogZW11bGF0b3IuaG9zdCA/PyBkZWZhdWx0SG9zdCwgcG9ydDogZW11bGF0b3IucG9ydCB9IDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbmFsQ29uZmlnOiBEYnhGaXJlYmFzZVBhcnNlZEVtdWxhdG9yc0NvbmZpZyA9IHtcbiAgICAgIHVzZUVtdWxhdG9yczogY29uZmlnLnVzZUVtdWxhdG9ycyAhPT0gZmFsc2UsXG4gICAgICBhdXRoOiBlbXVsYXRvckNvbmZpZyhjb25maWcuYXV0aCksXG4gICAgICBmaXJlc3RvcmU6IGVtdWxhdG9yQ29uZmlnKGNvbmZpZy5maXJlc3RvcmUpLFxuICAgICAgc3RvcmFnZTogZW11bGF0b3JDb25maWcoY29uZmlnLnN0b3JhZ2UpLFxuICAgICAgZnVuY3Rpb25zOiBlbXVsYXRvckNvbmZpZyhjb25maWcuZnVuY3Rpb25zKSxcbiAgICAgIGRhdGFiYXNlOiBlbXVsYXRvckNvbmZpZyhjb25maWcuZGF0YWJhc2UpXG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRGJ4RmlyZWJhc2VFbXVsYXRvck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGJ4RmlyZWJhc2VQYXJzZWRFbXVsYXRvcnNDb25maWcsXG4gICAgICAgICAgdXNlVmFsdWU6IGZpbmFsQ29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UuZW11bGF0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvZmlyZWJhc2UvZmlyZWJhc2UuZW11bGF0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBeUQsZ0NBQWdDLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3RIOztHQUVHO0FBRUgsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWtDO1FBQy9DLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksV0FBVyxDQUFDO1FBRS9DLFNBQVMsY0FBYyxDQUFDLFFBQTBDO1lBQ2hFLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxJQUFJLFdBQVcsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDNUYsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFxQztZQUNwRCxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVksS0FBSyxLQUFLO1lBQzNDLEVBQUUsRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUM3QixJQUFJLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDakMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQzNDLE9BQU8sRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUN2QyxTQUFTLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFDM0MsUUFBUSxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1NBQzFDLENBQUM7UUFFRixPQUFPO1lBQ0wsUUFBUSxFQUFFLHlCQUF5QjtZQUNuQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGdDQUFnQztvQkFDekMsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7c0hBM0JVLHlCQUF5Qjt1SEFBekIseUJBQXlCO3VIQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFEckMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnLCBEYnhGaXJlYmFzZUVtdWxhdG9yc0NvbmZpZywgRGJ4RmlyZWJhc2VQYXJzZWRFbXVsYXRvcnNDb25maWcgfSBmcm9tICcuL2VtdWxhdG9ycyc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG4vKipcbiAqIFVzZWQgdG8gY29uZmlndXJlIHRoZSBEYnhGaXJlYmFzZUVtdWxhdG9yc0NvbmZpZyBwcm92aWRlci5cbiAqL1xuQE5nTW9kdWxlKClcbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZUVtdWxhdG9yTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBEYnhGaXJlYmFzZUVtdWxhdG9yc0NvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RGJ4RmlyZWJhc2VFbXVsYXRvck1vZHVsZT4ge1xuICAgIGNvbnN0IGRlZmF1bHRIb3N0ID0gY29uZmlnLmhvc3QgPz8gJ2xvY2FsaG9zdCc7XG5cbiAgICBmdW5jdGlvbiBlbXVsYXRvckNvbmZpZyhlbXVsYXRvcjogTWF5YmU8RGJ4RmlyZWJhc2VFbXVsYXRvckNvbmZpZz4pOiBSZXF1aXJlZDxEYnhGaXJlYmFzZUVtdWxhdG9yQ29uZmlnPiB8IHVuZGVmaW5lZCB7XG4gICAgICByZXR1cm4gZW11bGF0b3IgPyB7IGhvc3Q6IGVtdWxhdG9yLmhvc3QgPz8gZGVmYXVsdEhvc3QsIHBvcnQ6IGVtdWxhdG9yLnBvcnQgfSA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBmaW5hbENvbmZpZzogRGJ4RmlyZWJhc2VQYXJzZWRFbXVsYXRvcnNDb25maWcgPSB7XG4gICAgICB1c2VFbXVsYXRvcnM6IGNvbmZpZy51c2VFbXVsYXRvcnMgIT09IGZhbHNlLFxuICAgICAgdWk6IGVtdWxhdG9yQ29uZmlnKGNvbmZpZy51aSksXG4gICAgICBhdXRoOiBlbXVsYXRvckNvbmZpZyhjb25maWcuYXV0aCksXG4gICAgICBmaXJlc3RvcmU6IGVtdWxhdG9yQ29uZmlnKGNvbmZpZy5maXJlc3RvcmUpLFxuICAgICAgc3RvcmFnZTogZW11bGF0b3JDb25maWcoY29uZmlnLnN0b3JhZ2UpLFxuICAgICAgZnVuY3Rpb25zOiBlbXVsYXRvckNvbmZpZyhjb25maWcuZnVuY3Rpb25zKSxcbiAgICAgIGRhdGFiYXNlOiBlbXVsYXRvckNvbmZpZyhjb25maWcuZGF0YWJhc2UpXG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRGJ4RmlyZWJhc2VFbXVsYXRvck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGJ4RmlyZWJhc2VQYXJzZWRFbXVsYXRvcnNDb25maWcsXG4gICAgICAgICAgdXNlVmFsdWU6IGZpbmFsQ29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { DbxFirebaseParsedEmulatorsConfig } from './emulators';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./emulators";
5
+ export class DbxFirebaseEmulatorService {
6
+ constructor(emulatorsConfig) {
7
+ this.emulatorsConfig = emulatorsConfig;
8
+ }
9
+ get useEmulators() {
10
+ return this.emulatorsConfig.useEmulators || false;
11
+ }
12
+ get emulatorUIAnchor() {
13
+ const ui = this.emulatorsConfig.ui;
14
+ return ui
15
+ ? {
16
+ url: `http://${ui.host ?? 'localhost'}:${ui.port}`,
17
+ target: '_blank'
18
+ }
19
+ : undefined;
20
+ }
21
+ }
22
+ DbxFirebaseEmulatorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseEmulatorService, deps: [{ token: i1.DbxFirebaseParsedEmulatorsConfig }], target: i0.ɵɵFactoryTarget.Injectable });
23
+ DbxFirebaseEmulatorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseEmulatorService, providedIn: 'root' });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxFirebaseEmulatorService, decorators: [{
25
+ type: Injectable,
26
+ args: [{
27
+ providedIn: 'root'
28
+ }]
29
+ }], ctorParameters: function () { return [{ type: i1.DbxFirebaseParsedEmulatorsConfig }]; } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWJhc2UuZW11bGF0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL2ZpcmViYXNlL2ZpcmViYXNlLmVtdWxhdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUsvRCxNQUFNLE9BQU8sMEJBQTBCO0lBZXJDLFlBQXFCLGVBQWlEO1FBQWpELG9CQUFlLEdBQWYsZUFBZSxDQUFrQztJQUFHLENBQUM7SUFkMUUsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sRUFBRTtZQUNQLENBQUMsQ0FBQztnQkFDRSxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUMsSUFBSSxJQUFJLFdBQVcsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFO2dCQUNsRCxNQUFNLEVBQUUsUUFBUTthQUNqQjtZQUNILENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEIsQ0FBQzs7dUhBYlUsMEJBQTBCOzJIQUExQiwwQkFBMEIsY0FGekIsTUFBTTsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xpY2thYmxlQW5jaG9yLCBDbGlja2FibGVVcmwgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VQYXJzZWRFbXVsYXRvcnNDb25maWcgfSBmcm9tICcuL2VtdWxhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERieEZpcmViYXNlRW11bGF0b3JTZXJ2aWNlIHtcbiAgZ2V0IHVzZUVtdWxhdG9ycygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbXVsYXRvcnNDb25maWcudXNlRW11bGF0b3JzIHx8IGZhbHNlO1xuICB9XG5cbiAgZ2V0IGVtdWxhdG9yVUlBbmNob3IoKTogTWF5YmU8Q2xpY2thYmxlVXJsPiB7XG4gICAgY29uc3QgdWkgPSB0aGlzLmVtdWxhdG9yc0NvbmZpZy51aTtcbiAgICByZXR1cm4gdWlcbiAgICAgID8ge1xuICAgICAgICAgIHVybDogYGh0dHA6Ly8ke3VpLmhvc3QgPz8gJ2xvY2FsaG9zdCd9OiR7dWkucG9ydH1gLFxuICAgICAgICAgIHRhcmdldDogJ19ibGFuaydcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBlbXVsYXRvcnNDb25maWc6IERieEZpcmViYXNlUGFyc2VkRW11bGF0b3JzQ29uZmlnKSB7fVxufVxuIl19
@@ -2,5 +2,6 @@ export * from './appcheck';
2
2
  export * from './emulators';
3
3
  export * from './firebase.module';
4
4
  export * from './firebase.emulator.module';
5
+ export * from './firebase.emulator.service';
5
6
  export * from './options';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9maXJlYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FwcGNoZWNrJztcbmV4cG9ydCAqIGZyb20gJy4vZW11bGF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlyZWJhc2UubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZmlyZWJhc2UuZW11bGF0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucyc7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9maXJlYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBwY2hlY2snO1xuZXhwb3J0ICogZnJvbSAnLi9lbXVsYXRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9maXJlYmFzZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maXJlYmFzZS5lbXVsYXRvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maXJlYmFzZS5lbXVsYXRvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vb3B0aW9ucyc7XG4iXX0=
@@ -53,8 +53,11 @@ export class DbxFirebaseIdRouteParamRedirectInstance {
53
53
  setDecider(decider) {
54
54
  this._useDefaultParamDecider.next(decider);
55
55
  }
56
+ setParamValue(value) {
57
+ this._paramReader.setParamValue(value);
58
+ }
56
59
  }
57
60
  export function dbxFirebaseIdRouteParamRedirect(dbxRouterService) {
58
61
  return new DbxFirebaseIdRouteParamRedirectInstance(dbxRouterService);
59
62
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQucGFyYW0ucmVkaXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9yb3V0ZXIvaWQucGFyYW0ucmVkaXJlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGVBQWUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEYsT0FBTyxFQUFvQiwyQkFBMkIsRUFBRSxvQ0FBb0MsRUFBdUIsTUFBTSxtQkFBbUIsQ0FBQztBQUk3SSxNQUFNLENBQUMsTUFBTSxpREFBaUQsR0FBRyxJQUFJLENBQUM7QUFDdEUsTUFBTSxDQUFDLE1BQU0sb0RBQW9ELEdBQUcsR0FBRyxDQUFDO0FBY3hFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHVDQUF1QztJQTBCbEQsWUFBcUIsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF6Qi9DLGlCQUFZLEdBQUcsSUFBSSwyQkFBMkIsQ0FBVyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsaURBQWlELENBQUMsQ0FBQztRQUNuSSxtQkFBYyxHQUFHLElBQUksb0NBQW9DLENBQVcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZGLDRCQUF1QixHQUFHLElBQUksZUFBZSxDQUFzRCxvREFBb0QsQ0FBQyxDQUFDO1FBRXpKLHNCQUFpQixHQUEyRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUNuSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNSLElBQUksTUFBa0QsQ0FBQztZQUV2RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRTtnQkFDekIsTUFBTSxHQUFHLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQzthQUN0RDtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsQ0FBQyxDQUFDO2FBQ1o7WUFFRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGdCQUFXLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDO1FBQ3ZFLGtCQUFhLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQzNFLFdBQU0sR0FBOEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDN0Qsa0JBQWEsR0FBZ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM5RCxRQUFHLEdBQWdDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFFRSxDQUFDO0lBRTNELElBQUk7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLENBQUMsS0FBb0IsRUFBRSxFQUFFO1lBQy9ELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxRQUFRLENBQUMsUUFBZ0I7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxlQUFlLENBQUMsWUFBa0Q7UUFDaEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQXdCO1FBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLFFBQVEsS0FBSyxLQUFLLENBQUM7SUFDbkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUE0RDtRQUNyRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRjtBQUVELE1BQU0sVUFBVSwrQkFBK0IsQ0FBQyxnQkFBa0M7SUFDaEYsT0FBTyxJQUFJLHVDQUF1QyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCwgbWFwLCBzaGFyZVJlcGxheSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4Um91dGVyU2VydmljZSwgRGJ4Um91dGVQYXJhbVJlYWRlckluc3RhbmNlLCBEYnhSb3V0ZVBhcmFtRGVmYXVsdFJlZGlyZWN0SW5zdGFuY2UsIERieFJvdXRlUGFyYW1SZWFkZXIgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEZXN0cm95YWJsZSwgSW5pdGlhbGl6ZWQsIE1heWJlLCBNb2RlbEtleSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgTWF5YmVPYnNlcnZhYmxlT3JWYWx1ZUdldHRlciwgU3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb24gfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcblxuZXhwb3J0IGNvbnN0IERCWF9GSVJFQkFTRV9JRF9ST1VURVJfUEFSQU1fREVGQVVMVF9JRF9QQVJBTV9LRVkgPSAnaWQnO1xuZXhwb3J0IGNvbnN0IERCWF9GSVJFQkFTRV9JRF9ST1VURVJfUEFSQU1fREVGQVVMVF9VU0VfUEFSQU1fVkFMVUUgPSAnMCc7XG5cbi8qKlxuICogVXNlZCB0byByZWFkIGFuIGlkIHdpdGggYSBzcGVjaWZpYyBrZXkgZnJvbSB0aGUgY3VycmVudCByb3V0ZS5cbiAqXG4gKiBDYW4gYmUgY29uZmlndXJlZCB0byByZWRpcmVjdCB0byBhIGRlZmF1bHQgcm91dGUgaWYgYSBzcGVjaWZpYyB2YWx1ZSBpcyBzZWVuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlSWRSb3V0ZVBhcmFtUmVkaXJlY3QgZXh0ZW5kcyBEYnhSb3V0ZVBhcmFtUmVhZGVyPE1vZGVsS2V5PiB7XG4gIHJlYWRvbmx5IGlkRnJvbVBhcmFtcyQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PjtcbiAgcmVhZG9ubHkgaWQkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj47XG4gIHNldFJlZGlyZWN0RW5hYmxlZChyZWRpcmVjdDogTWF5YmU8Ym9vbGVhbj4pOiB2b2lkO1xuICBzZXREZWNpZGVyKGRlY2lkZXI6IHN0cmluZyB8IFN3aXRjaE1hcFRvRGVmYXVsdEZpbHRlckZ1bmN0aW9uPE1vZGVsS2V5Pik6IHZvaWQ7XG59XG5cbi8qKlxuICogRGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdCBpbnN0YW5jZVxuICovXG5leHBvcnQgY2xhc3MgRGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdEluc3RhbmNlIGltcGxlbWVudHMgRGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdCwgRGJ4Um91dGVQYXJhbVJlYWRlcjxNb2RlbEtleT4sIEluaXRpYWxpemVkLCBEZXN0cm95YWJsZSB7XG4gIHByaXZhdGUgX3BhcmFtUmVhZGVyID0gbmV3IERieFJvdXRlUGFyYW1SZWFkZXJJbnN0YW5jZTxNb2RlbEtleT4odGhpcy5kYnhSb3V0ZXJTZXJ2aWNlLCBEQlhfRklSRUJBU0VfSURfUk9VVEVSX1BBUkFNX0RFRkFVTFRfSURfUEFSQU1fS0VZKTtcbiAgcHJpdmF0ZSBfcGFyYW1SZWRpcmVjdCA9IG5ldyBEYnhSb3V0ZVBhcmFtRGVmYXVsdFJlZGlyZWN0SW5zdGFuY2U8TW9kZWxLZXk+KHRoaXMuX3BhcmFtUmVhZGVyKTtcbiAgcHJpdmF0ZSBfdXNlRGVmYXVsdFBhcmFtRGVjaWRlciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgU3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+PihEQlhfRklSRUJBU0VfSURfUk9VVEVSX1BBUkFNX0RFRkFVTFRfVVNFX1BBUkFNX1ZBTFVFKTtcblxuICBwcml2YXRlIF91c2VEZWZhdWx0UGFyYW0kOiBPYnNlcnZhYmxlPFN3aXRjaE1hcFRvRGVmYXVsdEZpbHRlckZ1bmN0aW9uPE1vZGVsS2V5Pj4gPSB0aGlzLl91c2VEZWZhdWx0UGFyYW1EZWNpZGVyLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB7XG4gICAgICBsZXQgcmVzdWx0OiBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbjxNb2RlbEtleT47XG5cbiAgICAgIGlmICh0eXBlb2YgeCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmVzdWx0ID0gKHZhbHVlOiBNYXliZTxNb2RlbEtleT4pID0+IG9mKHZhbHVlID09PSB4KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdCA9IHg7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBwYXJhbVZhbHVlJDogT2JzZXJ2YWJsZTxNYXliZTxzdHJpbmc+PiA9IHRoaXMuX3BhcmFtUmVhZGVyLnBhcmFtVmFsdWUkO1xuICByZWFkb25seSBkZWZhdWx0VmFsdWUkOiBPYnNlcnZhYmxlPE1heWJlPHN0cmluZz4+ID0gdGhpcy5fcGFyYW1SZWFkZXIuZGVmYXVsdFZhbHVlJDtcbiAgcmVhZG9ubHkgdmFsdWUkOiBPYnNlcnZhYmxlPE1heWJlPHN0cmluZz4+ID0gdGhpcy5fcGFyYW1SZWFkZXIudmFsdWUkO1xuICByZWFkb25seSBpZEZyb21QYXJhbXMkOiBPYnNlcnZhYmxlPE1heWJlPE1vZGVsS2V5Pj4gPSB0aGlzLnBhcmFtVmFsdWUkO1xuICByZWFkb25seSBpZCQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IHRoaXMudmFsdWUkO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGRieFJvdXRlclNlcnZpY2U6IERieFJvdXRlclNlcnZpY2UpIHt9XG5cbiAgaW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9wYXJhbVJlZGlyZWN0LnNldFVzZURlZmF1bHRGaWx0ZXIoKHZhbHVlOiBNYXliZTxzdHJpbmc+KSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fdXNlRGVmYXVsdFBhcmFtJC5waXBlKHN3aXRjaE1hcCgoeCkgPT4geCh2YWx1ZSkpKTtcbiAgICB9KTtcbiAgICB0aGlzLl9wYXJhbVJlZGlyZWN0LmluaXQoKTtcbiAgfVxuXG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fcGFyYW1SZWFkZXIuZGVzdHJveSgpO1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3QuZGVzdHJveSgpO1xuICAgIHRoaXMuX3VzZURlZmF1bHRQYXJhbURlY2lkZXIuY29tcGxldGUoKTtcbiAgfVxuXG4gIGdldCBwYXJhbUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9wYXJhbVJlYWRlci5wYXJhbUtleTtcbiAgfVxuXG4gIHNldCBwYXJhbUtleShwYXJhbUtleTogc3RyaW5nKSB7XG4gICAgdGhpcy5fcGFyYW1SZWFkZXIucGFyYW1LZXkgPSBwYXJhbUtleTtcbiAgfVxuXG4gIHNldERlZmF1bHRWYWx1ZShkZWZhdWx0VmFsdWU6IE1heWJlT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXI8c3RyaW5nPik6IHZvaWQge1xuICAgIHRoaXMuX3BhcmFtUmVhZGVyLnNldERlZmF1bHRWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICB9XG5cbiAgc2V0UmVkaXJlY3RFbmFibGVkKHJlZGlyZWN0OiBNYXliZTxib29sZWFuPik6IHZvaWQge1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3QuZW5hYmxlZCA9IHJlZGlyZWN0ICE9PSBmYWxzZTtcbiAgfVxuXG4gIHNldERlY2lkZXIoZGVjaWRlcjogc3RyaW5nIHwgU3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+KTogdm9pZCB7XG4gICAgdGhpcy5fdXNlRGVmYXVsdFBhcmFtRGVjaWRlci5uZXh0KGRlY2lkZXIpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0KGRieFJvdXRlclNlcnZpY2U6IERieFJvdXRlclNlcnZpY2UpOiBEYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0SW5zdGFuY2Uge1xuICByZXR1cm4gbmV3IERieEZpcmViYXNlSWRSb3V0ZVBhcmFtUmVkaXJlY3RJbnN0YW5jZShkYnhSb3V0ZXJTZXJ2aWNlKTtcbn1cbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQucGFyYW0ucmVkaXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZmlyZWJhc2Uvc3JjL2xpYi9yb3V0ZXIvaWQucGFyYW0ucmVkaXJlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGVBQWUsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEYsT0FBTyxFQUFvQiwyQkFBMkIsRUFBRSxvQ0FBb0MsRUFBdUIsTUFBTSxtQkFBbUIsQ0FBQztBQUk3SSxNQUFNLENBQUMsTUFBTSxpREFBaUQsR0FBRyxJQUFJLENBQUM7QUFDdEUsTUFBTSxDQUFDLE1BQU0sb0RBQW9ELEdBQUcsR0FBRyxDQUFDO0FBY3hFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHVDQUF1QztJQTBCbEQsWUFBcUIsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF6Qi9DLGlCQUFZLEdBQUcsSUFBSSwyQkFBMkIsQ0FBVyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsaURBQWlELENBQUMsQ0FBQztRQUNuSSxtQkFBYyxHQUFHLElBQUksb0NBQW9DLENBQVcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZGLDRCQUF1QixHQUFHLElBQUksZUFBZSxDQUFzRCxvREFBb0QsQ0FBQyxDQUFDO1FBRXpKLHNCQUFpQixHQUEyRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUNuSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNSLElBQUksTUFBa0QsQ0FBQztZQUV2RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRTtnQkFDekIsTUFBTSxHQUFHLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQzthQUN0RDtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsQ0FBQyxDQUFDO2FBQ1o7WUFFRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLGdCQUFXLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDO1FBQ3ZFLGtCQUFhLEdBQThCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQzNFLFdBQU0sR0FBOEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDN0Qsa0JBQWEsR0FBZ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM5RCxRQUFHLEdBQWdDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFFRSxDQUFDO0lBRTNELElBQUk7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLENBQUMsS0FBb0IsRUFBRSxFQUFFO1lBQy9ELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxRQUFRLENBQUMsUUFBZ0I7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxlQUFlLENBQUMsWUFBa0Q7UUFDaEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQXdCO1FBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLFFBQVEsS0FBSyxLQUFLLENBQUM7SUFDbkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUE0RDtRQUNyRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBMkM7UUFDdkQsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLCtCQUErQixDQUFDLGdCQUFrQztJQUNoRixPQUFPLElBQUksdUNBQXVDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUN2RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0LCBtYXAsIHNoYXJlUmVwbGF5LCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhSb3V0ZXJTZXJ2aWNlLCBEYnhSb3V0ZVBhcmFtUmVhZGVySW5zdGFuY2UsIERieFJvdXRlUGFyYW1EZWZhdWx0UmVkaXJlY3RJbnN0YW5jZSwgRGJ4Um91dGVQYXJhbVJlYWRlciB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERlc3Ryb3lhYmxlLCBJbml0aWFsaXplZCwgTWF5YmUsIE1vZGVsS2V5IH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBNYXliZU9ic2VydmFibGVPclZhbHVlR2V0dGVyLCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbiB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG5leHBvcnQgY29uc3QgREJYX0ZJUkVCQVNFX0lEX1JPVVRFUl9QQVJBTV9ERUZBVUxUX0lEX1BBUkFNX0tFWSA9ICdpZCc7XG5leHBvcnQgY29uc3QgREJYX0ZJUkVCQVNFX0lEX1JPVVRFUl9QQVJBTV9ERUZBVUxUX1VTRV9QQVJBTV9WQUxVRSA9ICcwJztcblxuLyoqXG4gKiBVc2VkIHRvIHJlYWQgYW4gaWQgd2l0aCBhIHNwZWNpZmljIGtleSBmcm9tIHRoZSBjdXJyZW50IHJvdXRlLlxuICpcbiAqIENhbiBiZSBjb25maWd1cmVkIHRvIHJlZGlyZWN0IHRvIGEgZGVmYXVsdCByb3V0ZSBpZiBhIHNwZWNpZmljIHZhbHVlIGlzIHNlZW4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdCBleHRlbmRzIERieFJvdXRlUGFyYW1SZWFkZXI8TW9kZWxLZXk+IHtcbiAgcmVhZG9ubHkgaWRGcm9tUGFyYW1zJDogT2JzZXJ2YWJsZTxNYXliZTxNb2RlbEtleT4+O1xuICByZWFkb25seSBpZCQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PjtcbiAgc2V0UmVkaXJlY3RFbmFibGVkKHJlZGlyZWN0OiBNYXliZTxib29sZWFuPik6IHZvaWQ7XG4gIHNldERlY2lkZXIoZGVjaWRlcjogc3RyaW5nIHwgU3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+KTogdm9pZDtcbn1cblxuLyoqXG4gKiBEYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0IGluc3RhbmNlXG4gKi9cbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0SW5zdGFuY2UgaW1wbGVtZW50cyBEYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0LCBEYnhSb3V0ZVBhcmFtUmVhZGVyPE1vZGVsS2V5PiwgSW5pdGlhbGl6ZWQsIERlc3Ryb3lhYmxlIHtcbiAgcHJpdmF0ZSBfcGFyYW1SZWFkZXIgPSBuZXcgRGJ4Um91dGVQYXJhbVJlYWRlckluc3RhbmNlPE1vZGVsS2V5Pih0aGlzLmRieFJvdXRlclNlcnZpY2UsIERCWF9GSVJFQkFTRV9JRF9ST1VURVJfUEFSQU1fREVGQVVMVF9JRF9QQVJBTV9LRVkpO1xuICBwcml2YXRlIF9wYXJhbVJlZGlyZWN0ID0gbmV3IERieFJvdXRlUGFyYW1EZWZhdWx0UmVkaXJlY3RJbnN0YW5jZTxNb2RlbEtleT4odGhpcy5fcGFyYW1SZWFkZXIpO1xuICBwcml2YXRlIF91c2VEZWZhdWx0UGFyYW1EZWNpZGVyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbjxNb2RlbEtleT4+KERCWF9GSVJFQkFTRV9JRF9ST1VURVJfUEFSQU1fREVGQVVMVF9VU0VfUEFSQU1fVkFMVUUpO1xuXG4gIHByaXZhdGUgX3VzZURlZmF1bHRQYXJhbSQ6IE9ic2VydmFibGU8U3dpdGNoTWFwVG9EZWZhdWx0RmlsdGVyRnVuY3Rpb248TW9kZWxLZXk+PiA9IHRoaXMuX3VzZURlZmF1bHRQYXJhbURlY2lkZXIucGlwZShcbiAgICBtYXAoKHgpID0+IHtcbiAgICAgIGxldCByZXN1bHQ6IFN3aXRjaE1hcFRvRGVmYXVsdEZpbHRlckZ1bmN0aW9uPE1vZGVsS2V5PjtcblxuICAgICAgaWYgKHR5cGVvZiB4ID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXN1bHQgPSAodmFsdWU6IE1heWJlPE1vZGVsS2V5PikgPT4gb2YodmFsdWUgPT09IHgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0ID0geDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHBhcmFtVmFsdWUkOiBPYnNlcnZhYmxlPE1heWJlPHN0cmluZz4+ID0gdGhpcy5fcGFyYW1SZWFkZXIucGFyYW1WYWx1ZSQ7XG4gIHJlYWRvbmx5IGRlZmF1bHRWYWx1ZSQ6IE9ic2VydmFibGU8TWF5YmU8c3RyaW5nPj4gPSB0aGlzLl9wYXJhbVJlYWRlci5kZWZhdWx0VmFsdWUkO1xuICByZWFkb25seSB2YWx1ZSQ6IE9ic2VydmFibGU8TWF5YmU8c3RyaW5nPj4gPSB0aGlzLl9wYXJhbVJlYWRlci52YWx1ZSQ7XG4gIHJlYWRvbmx5IGlkRnJvbVBhcmFtcyQ6IE9ic2VydmFibGU8TWF5YmU8TW9kZWxLZXk+PiA9IHRoaXMucGFyYW1WYWx1ZSQ7XG4gIHJlYWRvbmx5IGlkJDogT2JzZXJ2YWJsZTxNYXliZTxNb2RlbEtleT4+ID0gdGhpcy52YWx1ZSQ7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgZGJ4Um91dGVyU2VydmljZTogRGJ4Um91dGVyU2VydmljZSkge31cblxuICBpbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3Quc2V0VXNlRGVmYXVsdEZpbHRlcigodmFsdWU6IE1heWJlPHN0cmluZz4pID0+IHtcbiAgICAgIHJldHVybiB0aGlzLl91c2VEZWZhdWx0UGFyYW0kLnBpcGUoc3dpdGNoTWFwKCh4KSA9PiB4KHZhbHVlKSkpO1xuICAgIH0pO1xuICAgIHRoaXMuX3BhcmFtUmVkaXJlY3QuaW5pdCgpO1xuICB9XG5cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9wYXJhbVJlYWRlci5kZXN0cm95KCk7XG4gICAgdGhpcy5fcGFyYW1SZWRpcmVjdC5kZXN0cm95KCk7XG4gICAgdGhpcy5fdXNlRGVmYXVsdFBhcmFtRGVjaWRlci5jb21wbGV0ZSgpO1xuICB9XG5cbiAgZ2V0IHBhcmFtS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmFtUmVhZGVyLnBhcmFtS2V5O1xuICB9XG5cbiAgc2V0IHBhcmFtS2V5KHBhcmFtS2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9wYXJhbVJlYWRlci5wYXJhbUtleSA9IHBhcmFtS2V5O1xuICB9XG5cbiAgc2V0RGVmYXVsdFZhbHVlKGRlZmF1bHRWYWx1ZTogTWF5YmVPYnNlcnZhYmxlT3JWYWx1ZUdldHRlcjxzdHJpbmc+KTogdm9pZCB7XG4gICAgdGhpcy5fcGFyYW1SZWFkZXIuc2V0RGVmYXVsdFZhbHVlKGRlZmF1bHRWYWx1ZSk7XG4gIH1cblxuICBzZXRSZWRpcmVjdEVuYWJsZWQocmVkaXJlY3Q6IE1heWJlPGJvb2xlYW4+KTogdm9pZCB7XG4gICAgdGhpcy5fcGFyYW1SZWRpcmVjdC5lbmFibGVkID0gcmVkaXJlY3QgIT09IGZhbHNlO1xuICB9XG5cbiAgc2V0RGVjaWRlcihkZWNpZGVyOiBzdHJpbmcgfCBTd2l0Y2hNYXBUb0RlZmF1bHRGaWx0ZXJGdW5jdGlvbjxNb2RlbEtleT4pOiB2b2lkIHtcbiAgICB0aGlzLl91c2VEZWZhdWx0UGFyYW1EZWNpZGVyLm5leHQoZGVjaWRlcik7XG4gIH1cblxuICBzZXRQYXJhbVZhbHVlKHZhbHVlOiBNYXliZU9ic2VydmFibGVPclZhbHVlR2V0dGVyPHN0cmluZz4pOiB2b2lkIHtcbiAgICB0aGlzLl9wYXJhbVJlYWRlci5zZXRQYXJhbVZhbHVlKHZhbHVlKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdChkYnhSb3V0ZXJTZXJ2aWNlOiBEYnhSb3V0ZXJTZXJ2aWNlKTogRGJ4RmlyZWJhc2VJZFJvdXRlUGFyYW1SZWRpcmVjdEluc3RhbmNlIHtcbiAgcmV0dXJuIG5ldyBEYnhGaXJlYmFzZUlkUm91dGVQYXJhbVJlZGlyZWN0SW5zdGFuY2UoZGJ4Um91dGVyU2VydmljZSk7XG59XG4iXX0=