@elderbyte/ngx-starter 15.14.1 → 15.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/esm2020/lib/common/data/datasource/local/local-list-data-source.mjs +52 -5
  2. package/esm2020/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +69 -0
  3. package/esm2020/lib/components/data-view/master-detail/elder-detail.directive.mjs +36 -0
  4. package/esm2020/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +47 -0
  5. package/esm2020/lib/components/data-view/master-detail/elder-master-detail-mode.mjs +6 -0
  6. package/esm2020/lib/components/data-view/master-detail/elder-master-detail.component.mjs +111 -0
  7. package/esm2020/lib/components/data-view/master-detail/elder-master-detail.module.mjs +115 -0
  8. package/esm2020/lib/components/data-view/master-detail/elder-master.directive.mjs +22 -0
  9. package/esm2020/lib/components/data-view/master-detail/master-detail.service.mjs +70 -0
  10. package/esm2020/lib/components/data-view/public_api.mjs +2 -1
  11. package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +17 -3
  12. package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +5 -2
  13. package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +5 -3
  14. package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +14 -6
  15. package/esm2020/lib/components/iframes/iframe-messages.mjs +5 -0
  16. package/esm2020/lib/components/iframes/iframe.service.mjs +6 -2
  17. package/esm2020/lib/components/iframes/typed-event-message.mjs +5 -5
  18. package/fesm2015/elderbyte-ngx-starter.mjs +7984 -7500
  19. package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
  20. package/fesm2020/elderbyte-ngx-starter.mjs +7808 -7327
  21. package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
  22. package/lib/common/data/datasource/local/local-list-data-source.d.ts +14 -2
  23. package/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.d.ts +41 -0
  24. package/lib/components/data-view/master-detail/elder-detail.directive.d.ts +23 -0
  25. package/lib/components/data-view/master-detail/elder-master-activation.directive.d.ts +30 -0
  26. package/lib/components/data-view/master-detail/elder-master-detail-mode.d.ts +4 -0
  27. package/lib/components/data-view/master-detail/elder-master-detail.component.d.ts +52 -0
  28. package/lib/components/data-view/master-detail/elder-master-detail.module.d.ts +35 -0
  29. package/lib/components/data-view/master-detail/elder-master.directive.d.ts +14 -0
  30. package/lib/components/data-view/master-detail/master-detail.service.d.ts +41 -0
  31. package/lib/components/data-view/public_api.d.ts +1 -0
  32. package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +1 -0
  33. package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +2 -1
  34. package/lib/components/iframes/iframe-messages.d.ts +4 -0
  35. package/lib/components/iframes/iframe.service.d.ts +1 -0
  36. package/lib/components/iframes/typed-event-message.d.ts +3 -1
  37. package/package.json +1 -1
  38. package/src/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.scss +0 -0
  39. package/src/lib/components/data-view/master-detail/elder-master-detail.component.scss +0 -0
@@ -0,0 +1,22 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ElderMasterDirective {
4
+ /***************************************************************************
5
+ * *
6
+ * Constructor *
7
+ * *
8
+ **************************************************************************/
9
+ constructor(templateRef, viewContainer) {
10
+ this.templateRef = templateRef;
11
+ this.viewContainer = viewContainer;
12
+ }
13
+ }
14
+ ElderMasterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
15
+ ElderMasterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderMasterDirective, selector: "[elderDataMaster]", ngImport: i0 });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDirective, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: '[elderDataMaster]'
20
+ }]
21
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbWFzdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS12aWV3L21hc3Rlci1kZXRhaWwvZWxkZXItbWFzdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFnQyxNQUFNLGVBQWUsQ0FBQzs7QUFLdkUsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQjs7OztnRkFJNEU7SUFFNUUsWUFDUyxXQUE2QixFQUM3QixhQUErQjtRQUQvQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO0lBRXhDLENBQUM7O2lIQVpVLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJEYXRhTWFzdGVyXSdcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJNYXN0ZXJEaXJlY3RpdmUge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZlxuICApIHtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,70 @@
1
+ import { Injectable, Input } from '@angular/core';
2
+ import { BehaviorSubject, merge, Subject } from 'rxjs';
3
+ import { LoggerFactory } from '@elderbyte/ts-logger';
4
+ import { takeUntil } from 'rxjs/operators';
5
+ import { ElderMasterDetailMode } from './elder-master-detail-mode';
6
+ import * as i0 from "@angular/core";
7
+ export class MasterDetailService {
8
+ /***************************************************************************
9
+ * *
10
+ * Constructor *
11
+ * *
12
+ **************************************************************************/
13
+ constructor() {
14
+ /***************************************************************************
15
+ * *
16
+ * Fields *
17
+ * *
18
+ **************************************************************************/
19
+ this.destroy$ = new Subject();
20
+ this.mode$ = new BehaviorSubject(ElderMasterDetailMode.EMBEDDED);
21
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
22
+ this.activeItem$ = new BehaviorSubject(null);
23
+ this.creatingItem$ = new BehaviorSubject(null);
24
+ this.activeOrCreating$ = new BehaviorSubject(null);
25
+ merge(this.creatingItem$, this.activeItem$)
26
+ .pipe(takeUntil(this.destroy$)).subscribe({
27
+ next: creatingOrActive => this.activeOrCreating$.next(creatingOrActive)
28
+ });
29
+ }
30
+ /***************************************************************************
31
+ * *
32
+ * Life Cycle *
33
+ * *
34
+ **************************************************************************/
35
+ ngOnDestroy() {
36
+ this.destroy$.next();
37
+ this.destroy$.complete();
38
+ }
39
+ /***************************************************************************
40
+ * *
41
+ * Properties *
42
+ * *
43
+ **************************************************************************/
44
+ get activeOrCreatingItemChange() {
45
+ return this.activeOrCreating$;
46
+ }
47
+ get activeItem() {
48
+ return this.activeItem$.getValue();
49
+ }
50
+ set activeItem(item) {
51
+ if (item !== this.activeItem) {
52
+ this.activeItem$.next(item);
53
+ }
54
+ }
55
+ get creatingItem() {
56
+ return this.creatingItem$.getValue();
57
+ }
58
+ set creatingItem(item) {
59
+ this.logger.warn('set creating item', item);
60
+ this.creatingItem$.next(item);
61
+ }
62
+ }
63
+ MasterDetailService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: MasterDetailService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
64
+ MasterDetailService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: MasterDetailService });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: MasterDetailService, decorators: [{
66
+ type: Injectable
67
+ }], ctorParameters: function () { return []; }, propDecorators: { mode$: [{
68
+ type: Input
69
+ }] } });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzdGVyLWRldGFpbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRhLXZpZXcvbWFzdGVyLWRldGFpbC9tYXN0ZXItZGV0YWlsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxLQUFLLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7O0FBR2pFLE1BQU0sT0FBTyxtQkFBbUI7SUFvQjlCOzs7O2dGQUk0RTtJQUc1RTtRQXpCQTs7OztvRkFJNEU7UUFFekQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFHbEMsVUFBSyxHQUFHLElBQUksZUFBZSxDQUF3QixxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVsRixXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFDM0Msa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBSSxJQUFJLENBQUMsQ0FBQztRQUU3QyxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBSSxJQUFJLENBQUMsQ0FBQztRQVVoRSxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQzFDLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QixDQUFDLFNBQVMsQ0FBQztZQUNWLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztTQUN4RSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFBVywwQkFBMEI7UUFDbkMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsVUFBVSxDQUFDLElBQU87UUFDM0IsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLFlBQVksQ0FBQyxJQUFPO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxDQUFBO1FBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2dIQTFFVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOzBFQVlPLEtBQUs7c0JBRHBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIElucHV0LCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RWxkZXJNYXN0ZXJEZXRhaWxNb2RlfSBmcm9tICcuL2VsZGVyLW1hc3Rlci1kZXRhaWwtbW9kZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXN0ZXJEZXRhaWxTZXJ2aWNlPFQ+IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBtb2RlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJNYXN0ZXJEZXRhaWxNb2RlPihFbGRlck1hc3RlckRldGFpbE1vZGUuRU1CRURERUQpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZUl0ZW0kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihudWxsKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjcmVhdGluZ0l0ZW0kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihudWxsKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZU9yQ3JlYXRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihudWxsKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIG1lcmdlKHRoaXMuY3JlYXRpbmdJdGVtJCwgdGhpcy5hY3RpdmVJdGVtJClcbiAgICAucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IGNyZWF0aW5nT3JBY3RpdmUgPT4gdGhpcy5hY3RpdmVPckNyZWF0aW5nJC5uZXh0KGNyZWF0aW5nT3JBY3RpdmUpXG4gICAgfSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBhY3RpdmVPckNyZWF0aW5nSXRlbUNoYW5nZSgpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVPckNyZWF0aW5nJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlSXRlbSgpOiBUIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVJdGVtJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldCBhY3RpdmVJdGVtKGl0ZW06IFQpIHtcbiAgICBpZiAoaXRlbSAhPT0gdGhpcy5hY3RpdmVJdGVtKSB7XG4gICAgICB0aGlzLmFjdGl2ZUl0ZW0kLm5leHQoaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBjcmVhdGluZ0l0ZW0oKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRpbmdJdGVtJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldCBjcmVhdGluZ0l0ZW0oaXRlbTogVCkge1xuICAgIHRoaXMubG9nZ2VyLndhcm4oJ3NldCBjcmVhdGluZyBpdGVtJywgaXRlbSlcbiAgICB0aGlzLmNyZWF0aW5nSXRlbSQubmV4dChpdGVtKTtcbiAgfVxufVxuIl19
@@ -3,4 +3,5 @@ export * from './common/elder-data-common.module';
3
3
  export * from './table/elder-table.module';
4
4
  export * from './simple/elder-simple-selection-view/elder-simple-selection-view.module';
5
5
  export * from './grid/elder-grid.module';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS12aWV3L3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5RUFBeUUsQ0FBQztBQUN4RixjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYXNlL3B1YmxpY19hcGknXG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9lbGRlci1kYXRhLWNvbW1vbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi90YWJsZS9lbGRlci10YWJsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaW1wbGUvZWxkZXItc2ltcGxlLXNlbGVjdGlvbi12aWV3L2VsZGVyLXNpbXBsZS1zZWxlY3Rpb24tdmlldy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ncmlkL2VsZGVyLWdyaWQubW9kdWxlJztcbiJdfQ==
6
+ export * from './master-detail/elder-master-detail.module';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS12aWV3L3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5RUFBeUUsQ0FBQztBQUN4RixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2UvcHVibGljX2FwaSdcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL2VsZGVyLWRhdGEtY29tbW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlL2VsZGVyLXRhYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NpbXBsZS9lbGRlci1zaW1wbGUtc2VsZWN0aW9uLXZpZXcvZWxkZXItc2ltcGxlLXNlbGVjdGlvbi12aWV3Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2dyaWQvZWxkZXItZ3JpZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXN0ZXItZGV0YWlsL2VsZGVyLW1hc3Rlci1kZXRhaWwubW9kdWxlJztcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { Directive, HostListener, Input, Output, } from '@angular/core';
2
2
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
- import { switchMap, takeUntil, tap } from 'rxjs/operators';
3
+ import { filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';
4
4
  import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../elder-table/elder-table.component";
@@ -32,13 +32,18 @@ export class ElderTableActivationDirective {
32
32
  ngAfterViewInit() {
33
33
  const rows$ = this.elderTable.rows$;
34
34
  const data$ = this.elderTable.dataContext$.pipe(switchMap(dc => dc.data), tap(data => this._data = data));
35
- combineLatest([rows$, data$]).pipe(takeUntil(this.destroy$)).subscribe(([rows, data]) => {
35
+ +combineLatest([rows$, data$]).pipe(takeUntil(this.destroy$)).subscribe(([rows, data]) => {
36
36
  this.rows$.next(this.rowDataUpdated(rows, data));
37
37
  this.handleAutoActivations();
38
38
  });
39
39
  combineLatest([this.rows$, this.activeItem$]).pipe(takeUntil(this.destroy$)).subscribe(([rows, activeItem]) => {
40
40
  this.updateRowsActivation(rows, activeItem);
41
41
  });
42
+ this.elderTable.dataContext$.pipe(takeUntil(this.destroy$), map(dc => dc.dataSource), switchMap(ds => ds.dataChanged), filter(event => event.deletedIds?.length > 0)).subscribe({
43
+ next: deleteEvent => {
44
+ deleteEvent.deletedIds.forEach(id => this.deactivateById(id));
45
+ }
46
+ });
42
47
  }
43
48
  ngOnDestroy() {
44
49
  this.destroy$.next();
@@ -160,6 +165,15 @@ export class ElderTableActivationDirective {
160
165
  });
161
166
  return rows;
162
167
  }
168
+ deactivateById(id) {
169
+ const active = this.activeItem$.getValue();
170
+ if (active) {
171
+ const activeId = this.getId(active);
172
+ if (activeId == id) {
173
+ this.activate(null);
174
+ }
175
+ }
176
+ }
163
177
  getRowForItem(item) {
164
178
  const rows = this.rows$.getValue();
165
179
  return rows.find(r => r.model === item);
@@ -272,4 +286,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
272
286
  }], activeItem: [{
273
287
  type: Input
274
288
  }] } });
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUtYWN0aXZhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdmlldy90YWJsZS9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTSxNQUFNLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQVN6RSxNQUFNLE9BQU8sNkJBQTZCO0lBcUJ4Qzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsVUFBK0I7UUFBL0IsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUExQmxEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWhDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFHcEQsc0JBQWlCLEdBQWdDLEVBQUUsQ0FBQztRQUVuRCxVQUFLLEdBQVEsRUFBRSxDQUFDO1FBRVIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUE4QixFQUFFLENBQUMsQ0FBQztJQVc3RSxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGVBQWU7UUFFcEIsTUFBTSxLQUFL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QUFZLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLFVBQVUsQ0FBQyxDQUFJLEVBQUUsQ0FBSTtRQUMzQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sWUFBWSxDQUFDLENBQUksRUFBRSxRQUFhO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVPLEtBQUssQ0FBQyxJQUFPO1FBQ25CLElBQUksSUFBSSxFQUFFO1lBQ1IsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkQsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7OzBIQW5UVSw2QkFBNkI7OEdBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzBHQWdCUSxpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMsc0JBQXNCO2dCQWlFdEIsU0FBUztzQkFEZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFnQ3hCLGdCQUFnQjtzQkFEMUIsTUFBTTtnQkFVSSxVQUFVO3NCQURwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItdGFibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQge3N3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7RWxkZXJUYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7RWxkZXJUYWJsZUFjdGl2YXRpb25PcHRpb25zfSBmcm9tICcuL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24tb3B0aW9ucyc7XG5pbXBvcnQge0VsZGVySXRlbUFjdGl2YXRvcn0gZnJvbSAnLi9lbGRlci1pdGVtLWFjdGl2YXRvcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRhYmxlW2VsZGVyVGFibGVBY3RpdmF0aW9uXScsXG4gIGV4cG9ydEFzOiAnZWxkZXJUYWJsZUFjdGl2YXRpb24nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyVGFibGVBY3RpdmF0aW9uRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgRWxkZXJJdGVtQWN0aXZhdG9yPFQ+LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSXRlbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KG51bGwpO1xuXG4gIEBJbnB1dCgnZWxkZXJUYWJsZUFjdGl2YXRpb24nKVxuICBwdWJsaWMgYWN0aXZhdGlvbk9wdGlvbnM6IEVsZGVyVGFibGVBY3RpdmF0aW9uT3B0aW9ucyA9IHt9O1xuXG4gIHByaXZhdGUgX2RhdGE6IFRbXSA9IFtdO1xuXG4gIHB1YmxpYyByZWFkb25seSByb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdPihbXSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGRlclRhYmxlOiBFbGRlclRhYmxlQ29tcG9uZW50XG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIGNvbnN0IHJvd3MkID0gdGhpcy5lbGRlclRhYmxlLnJvd3MkO1xuICAgIGNvbnN0IGRhdGEkID0gdGhpcy5lbGRlclRhYmxlLmRhdGFDb250ZXh0JC5waXBlKFxuICAgICAgc3dpdGNoTWFwKGRjID0+IGRjLmRhdGEpLFxuICAgICAgdGFwKGRhdGEgPT4gdGhpcy5fZGF0YSA9IGRhdGEpXG4gICAgKTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3Jvd3MkLCBkYXRhJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgZGF0YV0pID0+IHtcbiAgICAgICAgdGhpcy5yb3dzJC5uZXh0KFxuICAgICAgICAgIHRoaXMucm93RGF0YVVwZGF0ZWQocm93cywgZGF0YSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5oYW5kbGVBdXRvQWN0aXZhdGlvbnMoKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5yb3dzJCwgdGhpcy5hY3RpdmVJdGVtJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgYWN0aXZlSXRlbV0pID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVSb3dzQWN0aXZhdGlvbihyb3dzLCBhY3RpdmVJdGVtKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAvLyB0aGlzLmVsZGVyVGFibGUucm93cyQuZ2V0VmFsdWUoKS5mb3JFYWNoKHIgPT4gci5iaW5kVGFibGVBY3RpdmF0aW9uKG51bGwpKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi5cbiAgICogSG9zdCBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGxldCBuZXdBY3RpdmVJdGVtOiBUO1xuICAgIGlmIChldmVudC5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICBuZXdBY3RpdmVJdGVtID0gdGhpcy5uZXh0Um93SXRlbSgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICAgIG5ld0FjdGl2ZUl0ZW0gPSB0aGlzLnByZXZpb3VzUm93SXRlbSgpO1xuICAgIH1cblxuICAgIGlmIChuZXdBY3RpdmVJdGVtKSB7XG4gICAgICB0aGlzLmZvY3VzQW5kQWN0aXZhdGUobmV3QWN0aXZlSXRlbSk7XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aXZlID0gdGhpcy5hY3RpdmVJdGVtO1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLm9uSXRlbUNsaWNrKGFjdGl2ZSk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdTcGFjZWJhcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLnNlbGVjdGlvbk1vZGVsLnRvZ2dsZShhY3RpdmUpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBhY3RpdmVJdGVtQ2hhbmdlKCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVJdGVtKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFjdGl2ZUl0ZW0oaXRlbTogVCkge1xuICAgIGlmIChpdGVtICE9PSB0aGlzLmFjdGl2ZUl0ZW0pIHtcbiAgICAgIHRoaXMuYWN0aXZlSXRlbSQubmV4dChpdGVtKTtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdTZXQgYWN0aXZlIGl0ZW0gdG8gJywgaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGFjdGl2YXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUl0ZW0gPSBpdGVtO1xuICB9XG5cbiAgcHVibGljIGZvY3VzQW5kQWN0aXZhdGUoaXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdyA9IHRoaXMuZ2V0Um93Rm9ySXRlbShpdGVtKTtcbiAgICBpZiAocm93KSB7XG4gICAgICByb3cuZm91Y3MoKTsgLy8gRm9jdXMgd2lsbCBhdXRvIGFjdGl2YXRlIHRoZSByb3dcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNJdGVtQWN0aXZlKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5hY3RpdmVJdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtRXF1YWxzKHRoaXMuYWN0aXZlSXRlbSwgaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzSXRlbUZvY3VzKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBjb25zdCByb3cgPSB0aGlzLmdldFJvd0Zvckl0ZW0oaXRlbSk7XG4gICAgcmV0dXJuIHJvdz8uaGFzRm9jdXM7XG4gIH1cblxuICBwdWJsaWMgbmV4dENsb3NlVG8oYWN0aXZlOiBUKTogVCB7XG4gICAgY29uc3QgbmV4dCA9IHRoaXMubmV4dFJvd0l0ZW0oKTtcbiAgICBpZiAobmV4dCAhPT0gYWN0aXZlKSB7XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucHJldmlvdXNSb3dJdGVtKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHVwZGF0ZVJvd3NBY3RpdmF0aW9uKHJvd3M6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD5bXSwgYWN0aXZlSXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IGFjdGl2ZUlkID0gdGhpcy5nZXRJZChhY3RpdmVJdGVtKTtcbiAgICByb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgIHRoaXMudXBkYXRlUm93QWN0aXZhdGlvbihyb3csIGFjdGl2ZUlkKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUm93QWN0aXZhdGlvbihyb3c6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD4sIGFjdGl2ZUlkOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAocm93Lm1vZGVsKSB7XG4gICAgICBpZiAodGhpcy5pdGVtRXF1YWxzSWQocm93Lm1vZGVsLCBhY3RpdmVJZCkpIHtcbiAgICAgICAgaWYgKCFyb3cuYWN0aXZhdGVkKSB7XG4gICAgICAgICAgcm93LmFjdGl2YXRlZCA9IHRydWU7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0FjdGl2YXRlZCByb3c6ICcsIHJvdyk7XG4gICAgICAgICAgaWYgKCFyb3cuaGFzRm9jdXMpIHtcbiAgICAgICAgICAgIHJvdy5icmluZ1RvVmlldygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcm93LmFjdGl2YXRlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByb3cuYWN0aXZhdGVkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByb3dEYXRhVXBkYXRlZChcbiAgICByb3dzOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+W10sXG4gICAgZGF0YTogVFtdXG4gICk6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD5bXSB7XG4gICAgLy8gdGhpcy5sb2dnZXIuZGVidWcoJ0ZvdW5kIHJvd3M6Jywgcm93cyk7XG4gICAgcm93cy5mb3JFYWNoKHJvdyA9PiB7XG4gICAgICByb3cuYmluZFRhYmxlQWN0aXZhdGlvbih0aGlzKTtcbiAgICB9KTtcbiAgICByZXR1cm4gcm93cztcbiAgfVxuXG5cbiAgcHJpdmF0ZSBnZXRSb3dGb3JJdGVtKGl0ZW06IFQpOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+IHwgbnVsbCB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMucm93cyQuZ2V0VmFsdWUoKTtcbiAgICByZXR1cm4gcm93cy5maW5kKHIgPT4gci5tb2RlbCA9PT0gaXRlbSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUF1dG9BY3RpdmF0aW9ucygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaGFzQWN0aXZlSXRlbSB8fCB0aGlzLmFjdGl2YXRpb25PcHRpb25zLm1vZGUgPT09ICdhbHdheXMnKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMucm93KSB7XG4gICAgICAgIGNhc2UgJ25vbmUnOlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdmaXJzdCc6XG4gICAgICAgICAgdGhpcy5hY3RpdmF0ZUZpcnN0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xhc3QnOlxuICAgICAgICAgIHRoaXMuYWN0aXZhdGVMYXN0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaGFzQWN0aXZlSXRlbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmFjdGl2ZUl0ZW07XG4gIH1cblxuICBwcml2YXRlIGFjdGl2YXRlRmlyc3QoKTogdm9pZCB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuZ2V0SXRlbUF0SW5kZXgoMCk7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIHRoaXMuYWN0aXZhdGUoaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhY3RpdmF0ZUxhc3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RhdGEpIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldEl0ZW1BdEluZGV4KHRoaXMuX2RhdGEubGVuZ3RoIC0gMSk7XG4gICAgICBpZiAoaXRlbSkge1xuICAgICAgICB0aGlzLmFjdGl2YXRlKGl0ZW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJldmlvdXNSb3dJdGVtKCk6IFQge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLl9kYXRhO1xuICAgIGxldCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuICAgIGlmIChjdXJyZW50SW5kZXggPiAwKSB7XG4gICAgICAtLWN1cnJlbnRJbmRleDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMubG9vcCkge1xuICAgICAgICBjdXJyZW50SW5kZXggPSByb3dzLmxlbmd0aCAtIDE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldEl0ZW1BdEluZGV4KGN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBwcml2YXRlIG5leHRSb3dJdGVtKCk6IFQge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLl9kYXRhO1xuICAgIGxldCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuXG4gICAgaWYgKGN1cnJlbnRJbmRleCA8IChyb3dzLmxlbmd0aCAtIDEpKSB7XG4gICAgICArK2N1cnJlbnRJbmRleDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMubG9vcCkge1xuICAgICAgICBjdXJyZW50SW5kZXggPSAwO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRJdGVtQXRJbmRleChjdXJyZW50SW5kZXgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50SW5kZXgoKTogbnVtYmVyIHtcbiAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5hY3RpdmVJdGVtO1xuICAgIGlmIChhY3RpdmVJdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5maW5kSXRlbUluZGV4KGFjdGl2ZUl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gLTE7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtQXRJbmRleChpbmRleDogbnVtYmVyKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFbaW5kZXhdO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kSXRlbUluZGV4KGl0ZW06IFQpOiBudW1iZXIge1xuICAgIGNvbnN0IG5lZWRsZUlkID0gdGhpcy5nZXRJZChpdGVtKTtcbiAgICByZXR1cm4gdGhpcy5fZGF0YS5maW5kSW5kZXgoaXRtID0+IHRoaXMuaXRlbUVxdWFsc0lkKGl0bSwgbmVlZGxlSWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgaXRlbUVxdWFscyhhOiBULCBiOiBUKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWQoYSkgPT09IHRoaXMuZ2V0SWQoYik7XG4gIH1cblxuICBwcml2YXRlIGl0ZW1FcXVhbHNJZChhOiBULCBuZWVkbGVJZDogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWQoYSkgPT09IG5lZWRsZUlkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJZChpdGVtOiBUKTogYW55IHtcbiAgICBpZiAoaXRlbSkge1xuICAgICAgY29uc3QgZGMgPSB0aGlzLmVsZGVyVGFibGUuZGF0YUNvbnRleHQkLmdldFZhbHVlKCk7XG4gICAgICByZXR1cm4gZGM/LmRhdGFTb3VyY2U/LmdldElkKGl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaXRlbTtcbiAgICB9XG4gIH1cblxufVxuIl19
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUtYWN0aXZhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdmlldy90YWJsZS9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTSxNQUFNLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQVEsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBU3pFLE1BQU0sT0FBTyw2QkFBNkI7SUFxQnhDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixVQUErQjtRQUEvQixlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQTFCbEQ7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFeEQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFaEMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBSSxJQUFJLENBQUMsQ0FBQztRQUdwRCxzQkFBaUIsR0FBZ0MsRUFBRSxDQUFDO1FBRW5ELFVBQUssR0FBUSxFQUFFLENBQUM7UUFFUixVQUFLLEdBQUcsSUFBSSxlQUFlLENBQThCLEVBQUUsQ0FBQyxDQUFDO0lBVzdFLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUs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LEVBQUUsUUFBYTtRQUN0QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxLQUFLLENBQUMsSUFBTztRQUNuQixJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25ELE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDOzswSEF0VVUsNkJBQTZCOzhHQUE3Qiw2QkFBNkI7MkZBQTdCLDZCQUE2QjtrQkFKekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxRQUFRLEVBQUUsc0JBQXNCO2lCQUNqQzswR0FnQlEsaUJBQWlCO3NCQUR2QixLQUFLO3VCQUFDLHNCQUFzQjtnQkEwRXRCLFNBQVM7c0JBRGYsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBZ0N4QixnQkFBZ0I7c0JBRDFCLE1BQU07Z0JBVUksVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LCBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyVGFibGVSb3dEaXJlY3RpdmV9IGZyb20gJy4uL2VsZGVyLXRhYmxlLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtFbGRlclRhYmxlQ29tcG9uZW50fSBmcm9tICcuLi9lbGRlci10YWJsZS9lbGRlci10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlclRhYmxlQWN0aXZhdGlvbk9wdGlvbnN9IGZyb20gJy4vZWxkZXItdGFibGUtYWN0aXZhdGlvbi1vcHRpb25zJztcbmltcG9ydCB7RWxkZXJJdGVtQWN0aXZhdG9yfSBmcm9tICcuL2VsZGVyLWl0ZW0tYWN0aXZhdG9yJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnZWxkZXItdGFibGVbZWxkZXJUYWJsZUFjdGl2YXRpb25dJyxcbiAgZXhwb3J0QXM6ICdlbGRlclRhYmxlQWN0aXZhdGlvbidcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJUYWJsZUFjdGl2YXRpb25EaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBFbGRlckl0ZW1BY3RpdmF0b3I8VD4sIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVJdGVtJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VD4obnVsbCk7XG5cbiAgQElucHV0KCdlbGRlclRhYmxlQWN0aXZhdGlvbicpXG4gIHB1YmxpYyBhY3RpdmF0aW9uT3B0aW9uczogRWxkZXJUYWJsZUFjdGl2YXRpb25PcHRpb25zID0ge307XG5cbiAgcHJpdmF0ZSBfZGF0YTogVFtdID0gW107XG5cbiAgcHVibGljIHJlYWRvbmx5IHJvd3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+W10+KFtdKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZGVyVGFibGU6IEVsZGVyVGFibGVDb21wb25lbnRcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gICAgY29uc3Qgcm93cyQgPSB0aGlzLmVsZGVyVGFibGUucm93cyQ7XG4gICAgY29uc3QgZGF0YSQgPSB0aGlzLmVsZGVyVGFibGUuZGF0YUNvbnRleHQkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoZGMgPT4gZGMuZGF0YSksXG4gICAgICB0YXAoZGF0YSA9PiB0aGlzLl9kYXRhID0gZGF0YSlcbiAgICApOytcblxuICAgIGNvbWJpbmVMYXRlc3QoW3Jvd3MkLCBkYXRhJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgZGF0YV0pID0+IHtcbiAgICAgICAgdGhpcy5yb3dzJC5uZXh0KFxuICAgICAgICAgIHRoaXMucm93RGF0YVVwZGF0ZWQocm93cywgZGF0YSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5oYW5kbGVBdXRvQWN0aXZhdGlvbnMoKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5yb3dzJCwgdGhpcy5hY3RpdmVJdGVtJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgYWN0aXZlSXRlbV0pID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVSb3dzQWN0aXZhdGlvbihyb3dzLCBhY3RpdmVJdGVtKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgdGhpcy5lbGRlclRhYmxlLmRhdGFDb250ZXh0JC5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgbWFwKGRjID0+IGRjLmRhdGFTb3VyY2UpLFxuICAgICAgc3dpdGNoTWFwKGRzID0+IGRzLmRhdGFDaGFuZ2VkKSxcbiAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5kZWxldGVkSWRzPy5sZW5ndGggPiAwKVxuICAgICkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IGRlbGV0ZUV2ZW50ID0+IHtcbiAgICAgICAgIGRlbGV0ZUV2ZW50LmRlbGV0ZWRJZHMuZm9yRWFjaChpZCA9PiB0aGlzLmRlYWN0aXZhdGVCeUlkKGlkKSlcbiAgICAgIH19KVxuICB9XG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgLy8gdGhpcy5lbGRlclRhYmxlLnJvd3MkLmdldFZhbHVlKCkuZm9yRWFjaChyID0+IHIuYmluZFRhYmxlQWN0aXZhdGlvbihudWxsKSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICouXG4gICAqIEhvc3QgTGlzdGVuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBsZXQgbmV3QWN0aXZlSXRlbTogVDtcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgICAgbmV3QWN0aXZlSXRlbSA9IHRoaXMubmV4dFJvd0l0ZW0oKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmtleSA9PT0gJ0Fycm93VXAnKSB7XG4gICAgICBuZXdBY3RpdmVJdGVtID0gdGhpcy5wcmV2aW91c1Jvd0l0ZW0oKTtcbiAgICB9XG5cbiAgICBpZiAobmV3QWN0aXZlSXRlbSkge1xuICAgICAgdGhpcy5mb2N1c0FuZEFjdGl2YXRlKG5ld0FjdGl2ZUl0ZW0pO1xuICAgIH1cblxuICAgIGNvbnN0IGFjdGl2ZSA9IHRoaXMuYWN0aXZlSXRlbTtcbiAgICBpZiAoYWN0aXZlKSB7XG4gICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgIHRoaXMuZWxkZXJUYWJsZS5vbkl0ZW1DbGljayhhY3RpdmUpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnU3BhY2ViYXInIHx8IGV2ZW50LmtleSA9PT0gJyAnKSB7XG4gICAgICAgIHRoaXMuZWxkZXJUYWJsZS5zZWxlY3Rpb25Nb2RlbC50b2dnbGUoYWN0aXZlKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgYWN0aXZlSXRlbUNoYW5nZSgpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVJdGVtJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlSXRlbSgpOiBUIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVJdGVtJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhY3RpdmVJdGVtKGl0ZW06IFQpIHtcbiAgICBpZiAoaXRlbSAhPT0gdGhpcy5hY3RpdmVJdGVtKSB7XG4gICAgICB0aGlzLmFjdGl2ZUl0ZW0kLm5leHQoaXRlbSk7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnU2V0IGFjdGl2ZSBpdGVtIHRvICcsIGl0ZW0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBhY3RpdmF0ZShpdGVtOiBUKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVJdGVtID0gaXRlbTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1c0FuZEFjdGl2YXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICBjb25zdCByb3cgPSB0aGlzLmdldFJvd0Zvckl0ZW0oaXRlbSk7XG4gICAgaWYgKHJvdykge1xuICAgICAgcm93LmZvdWNzKCk7IC8vIEZvY3VzIHdpbGwgYXV0byBhY3RpdmF0ZSB0aGUgcm93XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzSXRlbUFjdGl2ZShpdGVtOiBUKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuYWN0aXZlSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuaXRlbUVxdWFscyh0aGlzLmFjdGl2ZUl0ZW0sIGl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhc0l0ZW1Gb2N1cyhpdGVtOiBUKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgcm93ID0gdGhpcy5nZXRSb3dGb3JJdGVtKGl0ZW0pO1xuICAgIHJldHVybiByb3c/Lmhhc0ZvY3VzO1xuICB9XG5cbiAgcHVibGljIG5leHRDbG9zZVRvKGFjdGl2ZTogVCk6IFQge1xuICAgIGNvbnN0IG5leHQgPSB0aGlzLm5leHRSb3dJdGVtKCk7XG4gICAgaWYgKG5leHQgIT09IGFjdGl2ZSkge1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnByZXZpb3VzUm93SXRlbSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSB1cGRhdGVSb3dzQWN0aXZhdGlvbihyb3dzOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+W10sIGFjdGl2ZUl0ZW06IFQpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVJZCA9IHRoaXMuZ2V0SWQoYWN0aXZlSXRlbSk7XG4gICAgcm93cy5mb3JFYWNoKHJvdyA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZVJvd0FjdGl2YXRpb24ocm93LCBhY3RpdmVJZCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVJvd0FjdGl2YXRpb24ocm93OiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+LCBhY3RpdmVJZDogYW55KTogdm9pZCB7XG4gICAgaWYgKHJvdy5tb2RlbCkge1xuICAgICAgaWYgKHRoaXMuaXRlbUVxdWFsc0lkKHJvdy5tb2RlbCwgYWN0aXZlSWQpKSB7XG4gICAgICAgIGlmICghcm93LmFjdGl2YXRlZCkge1xuICAgICAgICAgIHJvdy5hY3RpdmF0ZWQgPSB0cnVlO1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdBY3RpdmF0ZWQgcm93OiAnLCByb3cpO1xuICAgICAgICAgIGlmICghcm93Lmhhc0ZvY3VzKSB7XG4gICAgICAgICAgICByb3cuYnJpbmdUb1ZpZXcoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJvdy5hY3RpdmF0ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcm93LmFjdGl2YXRlZCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcm93RGF0YVVwZGF0ZWQoXG4gICAgcm93czogRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdLFxuICAgIGRhdGE6IFRbXVxuICApOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+W10ge1xuICAgIC8vIHRoaXMubG9nZ2VyLmRlYnVnKCdGb3VuZCByb3dzOicsIHJvd3MpO1xuICAgIHJvd3MuZm9yRWFjaChyb3cgPT4ge1xuICAgICAgcm93LmJpbmRUYWJsZUFjdGl2YXRpb24odGhpcyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHJvd3M7XG4gIH1cblxuXG4gIHByaXZhdGUgZGVhY3RpdmF0ZUJ5SWQoaWQ6IGFueSkge1xuICAgIGNvbnN0IGFjdGl2ZSA9IHRoaXMuYWN0aXZlSXRlbSQuZ2V0VmFsdWUoKTtcbiAgICBpZiAoYWN0aXZlKSB7XG4gICAgICBjb25zdCBhY3RpdmVJZCA9IHRoaXMuZ2V0SWQoYWN0aXZlKTtcbiAgICAgIGlmIChhY3RpdmVJZCA9PSBpZCkge1xuICAgICAgICB0aGlzLmFjdGl2YXRlKG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0Um93Rm9ySXRlbShpdGVtOiBUKTogRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPiB8IG51bGwge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLnJvd3MkLmdldFZhbHVlKCk7XG4gICAgcmV0dXJuIHJvd3MuZmluZChyID0+IHIubW9kZWwgPT09IGl0ZW0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVBdXRvQWN0aXZhdGlvbnMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmhhc0FjdGl2ZUl0ZW0gfHwgdGhpcy5hY3RpdmF0aW9uT3B0aW9ucy5tb2RlID09PSAnYWx3YXlzJykge1xuICAgICAgc3dpdGNoICh0aGlzLmFjdGl2YXRpb25PcHRpb25zLnJvdykge1xuICAgICAgICBjYXNlICdub25lJzpcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnZmlyc3QnOlxuICAgICAgICAgIHRoaXMuYWN0aXZhdGVGaXJzdCgpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsYXN0JzpcbiAgICAgICAgICB0aGlzLmFjdGl2YXRlTGFzdCgpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGhhc0FjdGl2ZUl0ZW0oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5hY3RpdmVJdGVtO1xuICB9XG5cbiAgcHJpdmF0ZSBhY3RpdmF0ZUZpcnN0KCk6IHZvaWQge1xuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldEl0ZW1BdEluZGV4KDApO1xuICAgIGlmIChpdGVtKSB7XG4gICAgICB0aGlzLmFjdGl2YXRlKGl0ZW0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZhdGVMYXN0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9kYXRhKSB7XG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5nZXRJdGVtQXRJbmRleCh0aGlzLl9kYXRhLmxlbmd0aCAtIDEpO1xuICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZShpdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHByZXZpb3VzUm93SXRlbSgpOiBUIHtcbiAgICBjb25zdCByb3dzID0gdGhpcy5fZGF0YTtcbiAgICBsZXQgY3VycmVudEluZGV4ID0gdGhpcy5nZXRDdXJyZW50SW5kZXgoKTtcbiAgICBpZiAoY3VycmVudEluZGV4ID4gMCkge1xuICAgICAgLS1jdXJyZW50SW5kZXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmFjdGl2YXRpb25PcHRpb25zLmxvb3ApIHtcbiAgICAgICAgY3VycmVudEluZGV4ID0gcm93cy5sZW5ndGggLSAxO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRJdGVtQXRJbmRleChjdXJyZW50SW5kZXgpO1xuICB9XG5cbiAgcHJpdmF0ZSBuZXh0Um93SXRlbSgpOiBUIHtcbiAgICBjb25zdCByb3dzID0gdGhpcy5fZGF0YTtcbiAgICBsZXQgY3VycmVudEluZGV4ID0gdGhpcy5nZXRDdXJyZW50SW5kZXgoKTtcblxuICAgIGlmIChjdXJyZW50SW5kZXggPCAocm93cy5sZW5ndGggLSAxKSkge1xuICAgICAgKytjdXJyZW50SW5kZXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmFjdGl2YXRpb25PcHRpb25zLmxvb3ApIHtcbiAgICAgICAgY3VycmVudEluZGV4ID0gMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0SXRlbUF0SW5kZXgoY3VycmVudEluZGV4KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q3VycmVudEluZGV4KCk6IG51bWJlciB7XG4gICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMuYWN0aXZlSXRlbTtcbiAgICBpZiAoYWN0aXZlSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuZmluZEl0ZW1JbmRleChhY3RpdmVJdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0SXRlbUF0SW5kZXgoaW5kZXg6IG51bWJlcik6IFQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9kYXRhW2luZGV4XTtcbiAgfVxuXG4gIHByaXZhdGUgZmluZEl0ZW1JbmRleChpdGVtOiBUKTogbnVtYmVyIHtcbiAgICBjb25zdCBuZWVkbGVJZCA9IHRoaXMuZ2V0SWQoaXRlbSk7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGEuZmluZEluZGV4KGl0bSA9PiB0aGlzLml0ZW1FcXVhbHNJZChpdG0sIG5lZWRsZUlkKSk7XG4gIH1cblxuICBwcml2YXRlIGl0ZW1FcXVhbHMoYTogVCwgYjogVCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldElkKGEpID09PSB0aGlzLmdldElkKGIpO1xuICB9XG5cbiAgcHJpdmF0ZSBpdGVtRXF1YWxzSWQoYTogVCwgbmVlZGxlSWQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldElkKGEpID09PSBuZWVkbGVJZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SWQoaXRlbTogVCk6IGFueSB7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIGNvbnN0IGRjID0gdGhpcy5lbGRlclRhYmxlLmRhdGFDb250ZXh0JC5nZXRWYWx1ZSgpO1xuICAgICAgcmV0dXJuIGRjPy5kYXRhU291cmNlPy5nZXRJZChpdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGl0ZW07XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -97,7 +97,10 @@ export class DataViewIframeComponent {
97
97
  combineLatest([
98
98
  this._dataViewOptions$,
99
99
  iframeHost.iframeState$
100
- ]).pipe(takeUntil(this._destroy$), filter(([options, state]) => !!options && state.hasLoaded)).subscribe(([options, state]) => this.sendMessageToChild(this.buildDataViewInitMessage(options, this.initialSelection)));
100
+ ]).pipe(takeUntil(this._destroy$),
101
+ // Send message on load and viewReady state for backwards compatibility between host and child.
102
+ // Actually using only viewReady should be enough
103
+ filter(([options, state]) => !!options && (state.hasLoaded || state.isViewReady))).subscribe(([options, state]) => this.sendMessageToChild(this.buildDataViewInitMessage(options, this.initialSelection)));
101
104
  }
102
105
  buildDataViewInitMessage(options, initialSelection) {
103
106
  return DataViewMessage.initialSelection(new DataViewSelectionInit(options, initialSelection, this.idField));
@@ -124,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
124
127
  }], dataViewOptions: [{
125
128
  type: Input
126
129
  }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZUFBZSxFQUFxQixxQkFBcUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saURBQWlELENBQUM7Ozs7O0FBRXJGOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBMEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDc0IsdUJBQXFELEVBQ3JELGNBQW1DO1FBRG5DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7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M0MsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FDOUQsQ0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVPLHdCQUF3QixDQUM5QixPQUE2QixFQUM3QixnQkFBdUI7UUFFdkIsT0FBTyxlQUFlLENBQUMsZ0JBQWdCLENBQ3JDLElBQUkscUJBQXFCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDbkUsQ0FBQztJQUNKLENBQUM7O29IQTNJVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixzT0F1QnZCLG1CQUFtQixnRENyRGhDLDJQQU1BOzJGRHdCYSx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFtQzVDLFFBQVE7OzBCQUNSLFFBQVE7NENBbkJKLE1BQU07c0JBRFosS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CO2dCQWtEbkIsZUFBZTtzQkFEekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsIFNraXBTZWxmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0lmcmFtZUhvc3RDb21wb25lbnR9IGZyb20gJy4uLy4uL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RhdGFWaWV3TWVzc2FnZSwgRGF0YVZpZXdTZWxlY3Rpb24sIERhdGFWaWV3U2VsZWN0aW9uSW5pdCwgVHlwZWRFdmVudE1lc3NhZ2V9IGZyb20gJy4uLy4uL3R5cGVkLWV2ZW50LW1lc3NhZ2UnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnN9IGZyb20gJy4uLy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zJztcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGRpc3BsYXlpbmcgYSByZW1vdGUgZGF0YSB2aWV3IGluIGFuIGlmcmFtZS5cbiAqIFByb3ZpZGVzIGNhcGFiaWxpdGllcyB0byBjb21tdW5pY2F0ZSBiZXR3ZWVuIHJlbW90ZSBkYXRhIHZpZXcgKGNoaWxkKVxuICogYW5kIGlmcmFtZSBwYXJlbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRhdGEtdmlldy1pZnJhbWUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGEtdmlldy1pZnJhbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdJZnJhbWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFWaWV3T3B0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEVsZGVyRGF0YVZpZXdPcHRpb25zPihFbGRlckRhdGFWaWV3T3B0aW9ucy5kZWZhdWx0T3B0aW9ucygpKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNyY1VybDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpZEZpZWxkOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGluaXRpYWxTZWxlY3Rpb246IGFueVtdO1xuXG4gIEBWaWV3Q2hpbGQoSWZyYW1lSG9zdENvbXBvbmVudClcbiAgcHVibGljIGlmcmFtZUhvc3Q6IElmcmFtZUhvc3RDb21wb25lbnQ7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+XG4gICkge1xuICAgIGlmIChkYXRhVmlld09wdGlvbnNQcm92aWRlcikge1xuICAgICAgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXIub3B0aW9ucyQucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKVxuICAgICAgKS5zdWJzY3JpYmUob3B0aW9ucyA9PiB0aGlzLmRhdGFWaWV3T3B0aW9ucyA9IG9wdGlvbnMpXG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBpZnJhbWUgaXMgb25seSBhdmFpbGFibGUgYWZ0ZXIgdmlldyBpbml0XG4gICAgdGhpcy5zZXR1cERhdGFWaWV3T3B0aW9uc0JyaWRnZSh0aGlzLmlmcmFtZUhvc3QpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBkYXRhVmlld09wdGlvbnMoKTogRWxkZXJEYXRhVmlld09wdGlvbnMge1xuICAgIHJldHVybiB0aGlzLl9kYXRhVmlld09wdGlvbnMkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGFWaWV3T3B0aW9ucyhvcHRpb25zOiBFbGRlckRhdGFWaWV3T3B0aW9ucykge1xuICAgIGNvbnN0IG5ld09wdGlvbnMgPSB0aGlzLmRhdGFWaWV3T3B0aW9ucy53aXRoT3B0aW9ucyhvcHRpb25zKTtcbiAgICB0aGlzLl9kYXRhVmlld09wdGlvbnMkLm5leHQobmV3T3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFWaWV3T3B0aW9ucyQoKTogT2JzZXJ2YWJsZTxFbGRlckRhdGFWaWV3T3B0aW9ucz4ge1xuICAgIHJldHVybiB0aGlzLl9kYXRhVmlld09wdGlvbnMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uTWVzc2FnZUZyb21DaGlsZChtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxhbnksYW55Pik6IHZvaWQge1xuICAgIGlmIChEYXRhVmlld01lc3NhZ2UuaXNPZlR5cGUobWVzc2FnZSkpe1xuICAgICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnU0VMRUNUSU9OX1NFTEVDVEVEJzpcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdGlvbk1lc3NhZ2UobWVzc2FnZS5kYXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBzZW5kTWVzc2FnZVRvQ2hpbGQobWVzc2FnZTogRGF0YVZpZXdNZXNzYWdlPGFueT4pIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhcIlNlbmRpbmcgbWVzc2FnZSB0byBpZnJhbWUgY2hpbGQ6XCIsIG1lc3NhZ2UpO1xuICAgIHRoaXMuaWZyYW1lSG9zdC5zZW5kTWVzc2FnZVRvQ2hpbGQobWVzc2FnZSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlU2VsZWN0aW9uTWVzc2FnZShkYXRhVmlld1NlbGVjdGlvbjogRGF0YVZpZXdTZWxlY3Rpb248YW55Pik6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGVsKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oZGF0YVZpZXdTZWxlY3Rpb24uc2VsZWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwRGF0YVZpZXdPcHRpb25zQnJpZGdlKFxuICAgIGlmcmFtZUhvc3Q6IElmcmFtZUhvc3RDb21wb25lbnRcbiAgKSB7XG4gICAgY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLl9kYXRhVmlld09wdGlvbnMkLFxuICAgICAgaWZyYW1lSG9zdC5pZnJhbWVTdGF0ZSRcbiAgICBdKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcigoW29wdGlvbnMsIHN0YXRlXSkgPT4gISFvcHRpb25zICYmIHN0YXRlLmhhc0xvYWRlZClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbb3B0aW9ucywgc3RhdGVdKSA9PiB0aGlzLnNlbmRNZXNzYWdlVG9DaGlsZChcbiAgICAgICAgdGhpcy5idWlsZERhdGFWaWV3SW5pdE1lc3NhZ2Uob3B0aW9ucywgdGhpcy5pbml0aWFsU2VsZWN0aW9uKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGREYXRhVmlld0luaXRNZXNzYWdlKFxuICAgIG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zLFxuICAgIGluaXRpYWxTZWxlY3Rpb246IGFueVtdXG4gICk6IERhdGFWaWV3TWVzc2FnZTxEYXRhVmlld1NlbGVjdGlvbkluaXQ8YW55Pj4ge1xuICAgIHJldHVybiBEYXRhVmlld01lc3NhZ2UuaW5pdGlhbFNlbGVjdGlvbihcbiAgICAgIG5ldyBEYXRhVmlld1NlbGVjdGlvbkluaXQob3B0aW9ucywgaW5pdGlhbFNlbGVjdGlvbiwgdGhpcy5pZEZpZWxkKVxuICAgICk7XG4gIH1cblxuXG59XG4iLCI8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG4gIDxlbGRlci1pLWZyYW1lLWhvc3QgY2xhc3M9XCJmbGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICBbaWZyYW1lUGFyYW1zXT1cIntzcmNVcmw6IHNyY1VybCwgaGlkZUFjdGlvbkJhcjogdHJ1ZX1cIlxuICAgICAgICAgICAgICAgICAgICAgIChtZXNzYWdlKT1cIm9uTWVzc2FnZUZyb21DaGlsZCgkZXZlbnQpXCI+XG4gIDwvZWxkZXItaS1mcmFtZS1ob3N0PlxuPC9kaXY+XG4iXX0=
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZUFBZSxFQUFxQixxQkFBcUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saURBQWlELENBQUM7Ozs7O0FBRXJGOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBMEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDc0IsdUJBQXFELEVBQ3JELGNBQW1DO1FBRG5DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7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LE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUMzQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUM5RCxDQUNGLENBQUE7SUFDSCxDQUFDO0lBRU8sd0JBQXdCLENBQzlCLE9BQTZCLEVBQzdCLGdCQUF1QjtRQUV2QixPQUFPLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FDckMsSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUNuRSxDQUFDO0lBQ0osQ0FBQzs7b0hBN0lVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHNPQXVCdkIsbUJBQW1CLGdEQ3JEaEMsMlBBTUE7MkZEd0JhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OzBCQW1DNUMsUUFBUTs7MEJBQ1IsUUFBUTs0Q0FuQkosTUFBTTtzQkFEWixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBa0RuQixlQUFlO3NCQUR6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCwgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SWZyYW1lSG9zdENvbXBvbmVudH0gZnJvbSAnLi4vLi4vaWZyYW1lLWhvc3QvaWZyYW1lLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7U2VsZWN0aW9uTW9kZWx9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9zZWxlY3Rpb24vc2VsZWN0aW9uLW1vZGVsJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RGF0YVZpZXdNZXNzYWdlLCBEYXRhVmlld1NlbGVjdGlvbiwgRGF0YVZpZXdTZWxlY3Rpb25Jbml0LCBUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc30gZnJvbSAnLi4vLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMnO1xuXG4vKipcbiAqIENvbnRhaW5lciBmb3IgZGlzcGxheWluZyBhIHJlbW90ZSBkYXRhIHZpZXcgaW4gYW4gaWZyYW1lLlxuICogUHJvdmlkZXMgY2FwYWJpbGl0aWVzIHRvIGNvbW11bmljYXRlIGJldHdlZW4gcmVtb3RlIGRhdGEgdmlldyAoY2hpbGQpXG4gKiBhbmQgaWZyYW1lIHBhcmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZGF0YS12aWV3LWlmcmFtZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctaWZyYW1lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld0lmcmFtZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YVZpZXdPcHRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJEYXRhVmlld09wdGlvbnM+KEVsZGVyRGF0YVZpZXdPcHRpb25zLmRlZmF1bHRPcHRpb25zKCkpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc3JjVXJsOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlkRmllbGQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5pdGlhbFNlbGVjdGlvbjogYW55W107XG5cbiAgQFZpZXdDaGlsZChJZnJhbWVIb3N0Q29tcG9uZW50KVxuICBwdWJsaWMgaWZyYW1lSG9zdDogSWZyYW1lSG9zdENvbXBvbmVudDtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT5cbiAgKSB7XG4gICAgaWYgKGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKSB7XG4gICAgICBkYXRhVmlld09wdGlvbnNQcm92aWRlci5vcHRpb25zJC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpXG4gICAgICApLnN1YnNjcmliZShvcHRpb25zID0+IHRoaXMuZGF0YVZpZXdPcHRpb25zID0gb3B0aW9ucylcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIC8vIGlmcmFtZSBpcyBvbmx5IGF2YWlsYWJsZSBhZnRlciB2aWV3IGluaXRcbiAgICB0aGlzLnNldHVwRGF0YVZpZXdPcHRpb25zQnJpZGdlKHRoaXMuaWZyYW1lSG9zdCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFWaWV3T3B0aW9ucygpOiBFbGRlckRhdGFWaWV3T3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YVZpZXdPcHRpb25zKG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zKSB7XG4gICAgY29uc3QgbmV3T3B0aW9ucyA9IHRoaXMuZGF0YVZpZXdPcHRpb25zLndpdGhPcHRpb25zKG9wdGlvbnMpO1xuICAgIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQubmV4dChuZXdPcHRpb25zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YVZpZXdPcHRpb25zJCgpOiBPYnNlcnZhYmxlPEVsZGVyRGF0YVZpZXdPcHRpb25zPiB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25NZXNzYWdlRnJvbUNoaWxkKG1lc3NhZ2U6IFR5cGVkRXZlbnRNZXNzYWdlPGFueSxhbnk+KTogdm9pZCB7XG4gICAgaWYgKERhdGFWaWV3TWVzc2FnZS5pc09mVHlwZShtZXNzYWdlKSl7XG4gICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgICBjYXNlICdTRUxFQ1RJT05fU0VMRUNURUQnOlxuICAgICAgICAgIHRoaXMuaGFuZGxlU2VsZWN0aW9uTWVzc2FnZShtZXNzYWdlLmRhdGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgcHVibGljIHNlbmRNZXNzYWdlVG9DaGlsZChtZXNzYWdlOiBEYXRhVmlld01lc3NhZ2U8YW55Pikge1xuICAgIHRoaXMubG9nLmRlYnVnKFwiU2VuZGluZyBtZXNzYWdlIHRvIGlmcmFtZSBjaGlsZDpcIiwgbWVzc2FnZSk7XG4gICAgdGhpcy5pZnJhbWVIb3N0LnNlbmRNZXNzYWdlVG9DaGlsZChtZXNzYWdlKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBoYW5kbGVTZWxlY3Rpb25NZXNzYWdlKGRhdGFWaWV3U2VsZWN0aW9uOiBEYXRhVmlld1NlbGVjdGlvbjxhbnk+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZWwpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwucmVwbGFjZVNlbGVjdGlvbihkYXRhVmlld1NlbGVjdGlvbi5zZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBEYXRhVmlld09wdGlvbnNCcmlkZ2UoXG4gICAgaWZyYW1lSG9zdDogSWZyYW1lSG9zdENvbXBvbmVudFxuICApIHtcbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQsXG4gICAgICBpZnJhbWVIb3N0LmlmcmFtZVN0YXRlJFxuICAgIF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgLy8gU2VuZCBtZXNzYWdlIG9uIGxvYWQgYW5kIHZpZXdSZWFkeSBzdGF0ZSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgYmV0d2VlbiBob3N0IGFuZCBjaGlsZC5cbiAgICAgIC8vIEFjdHVhbGx5IHVzaW5nIG9ubHkgdmlld1JlYWR5IHNob3VsZCBiZSBlbm91Z2hcbiAgICAgIGZpbHRlcigoW29wdGlvbnMsIHN0YXRlXSkgPT4gISFvcHRpb25zICYmIChzdGF0ZS5oYXNMb2FkZWQgfHwgc3RhdGUuaXNWaWV3UmVhZHkpKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgKFtvcHRpb25zLCBzdGF0ZV0pID0+IHRoaXMuc2VuZE1lc3NhZ2VUb0NoaWxkKFxuICAgICAgICB0aGlzLmJ1aWxkRGF0YVZpZXdJbml0TWVzc2FnZShvcHRpb25zLCB0aGlzLmluaXRpYWxTZWxlY3Rpb24pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERhdGFWaWV3SW5pdE1lc3NhZ2UoXG4gICAgb3B0aW9uczogRWxkZXJEYXRhVmlld09wdGlvbnMsXG4gICAgaW5pdGlhbFNlbGVjdGlvbjogYW55W11cbiAgKTogRGF0YVZpZXdNZXNzYWdlPERhdGFWaWV3U2VsZWN0aW9uSW5pdDxhbnk+PiB7XG4gICAgcmV0dXJuIERhdGFWaWV3TWVzc2FnZS5pbml0aWFsU2VsZWN0aW9uKFxuICAgICAgbmV3IERhdGFWaWV3U2VsZWN0aW9uSW5pdChvcHRpb25zLCBpbml0aWFsU2VsZWN0aW9uLCB0aGlzLmlkRmllbGQpXG4gICAgKTtcbiAgfVxuXG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgPGVsZGVyLWktZnJhbWUtaG9zdCBjbGFzcz1cImZsZXhcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpZnJhbWVQYXJhbXNdPVwie3NyY1VybDogc3JjVXJsLCBoaWRlQWN0aW9uQmFyOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgICAgKG1lc3NhZ2UpPVwib25NZXNzYWdlRnJvbUNoaWxkKCRldmVudClcIj5cbiAgPC9lbGRlci1pLWZyYW1lLWhvc3Q+XG48L2Rpdj5cbiJdfQ==
@@ -53,8 +53,8 @@ export class DataViewIframeAdapterDirective {
53
53
  * @param event message from parent window
54
54
  */
55
55
  onWindowsMessage(event) {
56
- this.log.debug('Received message event from parent:', event);
57
- if (event) {
56
+ this.log.trace('Received message event from parent:', event);
57
+ if (event && event.data) {
58
58
  if (DataViewMessage.isOfType(event.data)) {
59
59
  this.log.debug('Received data view message from parent:', event);
60
60
  this.handleMessageFromParent(event.data);
@@ -68,6 +68,8 @@ export class DataViewIframeAdapterDirective {
68
68
  * *
69
69
  **************************************************************************/
70
70
  ngOnInit() {
71
+ // indicating iframe host that we are ready (e.g. ready to receive messages)
72
+ this.iframeService.postViewReadyEventMessage();
71
73
  }
72
74
  ngOnDestroy() {
73
75
  this._destroy$.next();
@@ -133,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
133
135
  type: HostListener,
134
136
  args: ['window:message', ['$event']]
135
137
  }] } });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBRW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFjSCxNQUFNLE9BQU8sOEJBQThCO0lBWXpDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixhQUE0QixFQUM1QixjQUFtQyxFQUNuQyx1QkFBcUQ7UUFGckQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7UUFuQnhFOzs7O29GQUk0RTtR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QUN0QztLQUNGOzJGQUVVLDhCQUE4QjtrQkFiMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFVBQVUsRUFBRSxvQkFBb0I7eUJBQ2pDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFVBQVUsRUFBRSx5QkFBeUI7eUJBQ3RDO3FCQUNGO2lCQUNGOzRLQTRDUSxnQkFBZ0I7c0JBRHRCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3NlbGVjdGlvbi9zZWxlY3Rpb24tbW9kZWwnO1xuaW1wb3J0IHtTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RhdGFWaWV3TWVzc2FnZSwgRGF0YVZpZXdTZWxlY3Rpb24sIERhdGFWaWV3U2VsZWN0aW9uSW5pdH0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0lmcmFtZVNlcnZpY2V9IGZyb20gJy4uL2lmcmFtZS5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyfSBmcm9tICcuLi8uLi9kYXRhLXZpZXcvYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3Rpb25Nb2RlbCgpOiBTZWxlY3Rpb25Nb2RlbDxhbnk+IHtcbiAgcmV0dXJuIG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEYXRhT3B0aW9uc1Byb3ZpZGVyKCk6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIge1xuICByZXR1cm4gbmV3IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIoKTtcbn1cblxuLyoqXG4gKiBBbiBhZGFwdGVyIGJyaWRnaW5nIGNvbW11bmljYXRpb24gYmV0d2VlblxuICogYSBkYXRhIHZpZXcgZGlzcGxheWVkIGluIGFuIGlmcmFtZSBhbmQgaXRzIHBhcmVudC5cbiAqXG4gKiBGb3IgZXhhbXBsZSBwcm9wYWdhdGVzIHNlbGVjdGlvbiBtb2RlbCBjaGFuZ2VzXG4gKiB0byB0aGUgaWZyYW1lIHBhcmVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRGF0YVZpZXdJZnJhbWVBZGFwdGVyXScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNlbGVjdGlvbk1vZGVsLFxuICAgICAgdXNlRmFjdG9yeTogY3JlYXRlU2VsZWN0aW9uTW9kZWxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIsXG4gICAgICB1c2VGYWN0b3J5OiBjcmVhdGVEYXRhT3B0aW9uc1Byb3ZpZGVyXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFWaWV3SWZyYW1lQWRhcHRlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWZyYW1lU2VydmljZTogSWZyYW1lU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXI6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJcbiAgKSB7XG4gICAgc2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICBzZWxlY3Rpb24gPT4gdGhpcy5wcm9wYWdhdGVTZWxlY3Rpb25Ub1BhcmVudChzZWxlY3Rpb24pXG4gICAgKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpc3RlbmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIExpc3RlbnMgZm9yIG1lc3NhZ2VzIGZyb20gcGFyZW50IHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBwYXJlbnQuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gcGFyZW50IHdpbmRvd1xuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93Om1lc3NhZ2UnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25XaW5kb3dzTWVzc2FnZShldmVudDogTWVzc2FnZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ1JlY2VpdmVkIG1lc3NhZ2UgZXZlbnQgZnJvbSBwYXJlbnQ6JywgZXZlbnQpO1xuICAgIGlmIChldmVudCkge1xuICAgICAgaWYgKERhdGFWaWV3TWVzc2FnZS5pc09mVHlwZShldmVudC5kYXRhKSkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnUmVjZWl2ZWQgZGF0YSB2aWV3IG1lc3NhZ2UgZnJvbSBwYXJlbnQ6JywgZXZlbnQpO1xuICAgICAgICB0aGlzLmhhbmRsZU1lc3NhZ2VGcm9tUGFyZW50KGV2ZW50LmRhdGEpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlTWVzc2FnZUZyb21QYXJlbnQobWVzc2FnZTogRGF0YVZpZXdNZXNzYWdlPGFueSwgYW55Pik6IHZvaWQge1xuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlICdTRUxFQ1RJT05fSU5JVCc6XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZURhdGFWaWV3KG1lc3NhZ2UuZGF0YSlcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplRGF0YVZpZXcoaW5pdDogRGF0YVZpZXdTZWxlY3Rpb25Jbml0PGFueT4pOiB2b2lkIHtcblxuICAgIC8vIHVwZGF0aW5nIG9wdGlvbnMgb2YgY2hpbGQgZGF0YSB2aWV3IGdpdmVuIGJ5IGlmcmFtZSBwYXJlbnRcbiAgICB0aGlzLmRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLnVwZGF0ZU9wdGlvbnMoXG4gICAgICBvcHRpb25zID0+IG9wdGlvbnMud2l0aE9wdGlvbnMoaW5pdC5vcHRpb25zKVxuICAgIClcblxuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwua2V5R2V0dGVyRm4gPSAoZW50aXR5KSA9PiBlbnRpdHlbaW5pdC5pZEZpZWxkXTtcbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzTXVsdGlwbGVTZWxlY3Rpb24gPSBpbml0Lm9wdGlvbnMuc2VsZWN0aW9uTXVsdGlFbmFibGVkO1xuICAgIGlmIChpbml0LmluaXRpYWxTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwucmVwbGFjZVNlbGVjdGlvbihpbml0LmluaXRpYWxTZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJvcGFnYXRlU2VsZWN0aW9uVG9QYXJlbnQoc2VsZWN0aW9uOiBhbnlbXSk6IHZvaWQge1xuICAgIHRoaXMubG9nLmRlYnVnKCdQcm9wYWdhdGluZyBzZWxlY3Rpb24gdG8gaWZyYW1lIHBhcmVudDonLCBzZWxlY3Rpb24pO1xuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuYnVpbGRTZWxlY3Rpb25NZXNzYWdlKHNlbGVjdGlvbik7XG4gICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnBvc3REYXRhTWVzc2FnZShtZXNzYWdlKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRTZWxlY3Rpb25NZXNzYWdlKHNlbGVjdGlvbjogYW55W10pOiBEYXRhVmlld01lc3NhZ2U8YW55PiB7XG4gICAgcmV0dXJuIERhdGFWaWV3TWVzc2FnZS5zZWxlY3Rpb24obmV3IERhdGFWaWV3U2VsZWN0aW9uKHNlbGVjdGlvbikpO1xuICB9XG5cbn1cbiJdfQ==
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBRW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFjSCxNQUFNLE9BQU8sOEJBQThCO0lBWXpDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixhQUE0QixFQUM1QixjQUFtQyxFQUNuQyx1QkFBcUQ7UUFGckQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7UUFuQnhFOzs7O29GQUk0RTtR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dkIsVUFBVSxFQUFFLG9CQUFvQjtTQUNqQztRQUNEO1lBQ0UsT0FBTyxFQUFFLDRCQUE0QjtZQUNyQyxVQUFVLEVBQUUseUJBQXlCO1NBQ3RDO0tBQ0Y7MkZBRVUsOEJBQThCO2tCQWIxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsVUFBVSxFQUFFLG9CQUFvQjt5QkFDakM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLDRCQUE0Qjs0QkFDckMsVUFBVSxFQUFFLHlCQUF5Qjt5QkFDdEM7cUJBQ0Y7aUJBQ0Y7NEtBNENRLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSG9zdExpc3RlbmVyLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RGF0YVZpZXdNZXNzYWdlLCBEYXRhVmlld1NlbGVjdGlvbiwgRGF0YVZpZXdTZWxlY3Rpb25Jbml0fSBmcm9tICcuLi90eXBlZC1ldmVudC1tZXNzYWdlJztcbmltcG9ydCB7SWZyYW1lU2VydmljZX0gZnJvbSAnLi4vaWZyYW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlbGVjdGlvbk1vZGVsKCk6IFNlbGVjdGlvbk1vZGVsPGFueT4ge1xuICByZXR1cm4gbmV3IFNlbGVjdGlvbk1vZGVsPGFueT4oKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURhdGFPcHRpb25zUHJvdmlkZXIoKTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlciB7XG4gIHJldHVybiBuZXcgRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcigpO1xufVxuXG4vKipcbiAqIEFuIGFkYXB0ZXIgYnJpZGdpbmcgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXG4gKiBhIGRhdGEgdmlldyBkaXNwbGF5ZWQgaW4gYW4gaWZyYW1lIGFuZCBpdHMgcGFyZW50LlxuICpcbiAqIEZvciBleGFtcGxlIHByb3BhZ2F0ZXMgc2VsZWN0aW9uIG1vZGVsIGNoYW5nZXNcbiAqIHRvIHRoZSBpZnJhbWUgcGFyZW50LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJEYXRhVmlld0lmcmFtZUFkYXB0ZXJdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogU2VsZWN0aW9uTW9kZWwsXG4gICAgICB1c2VGYWN0b3J5OiBjcmVhdGVTZWxlY3Rpb25Nb2RlbFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICAgIHVzZUZhY3Rvcnk6IGNyZWF0ZURhdGFPcHRpb25zUHJvdmlkZXJcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdJZnJhbWVBZGFwdGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBpZnJhbWVTZXJ2aWNlOiBJZnJhbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlclxuICApIHtcbiAgICBzZWxlY3Rpb25Nb2RlbC5zZWxlY3Rpb24ucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIHNlbGVjdGlvbiA9PiB0aGlzLnByb3BhZ2F0ZVNlbGVjdGlvblRvUGFyZW50KHNlbGVjdGlvbilcbiAgICApXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlzdGVuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogTGlzdGVucyBmb3IgbWVzc2FnZXMgZnJvbSBwYXJlbnQgd2luZG93LlxuICAgKiBNYWtlcyBpdCBwb3NzaWJsZSB0byByZWFjdCB1cG9uIG1lc3NhZ2VzIGZyb20gaWZyYW1lIHBhcmVudC5cbiAgICpcbiAgICogQHBhcmFtIGV2ZW50IG1lc3NhZ2UgZnJvbSBwYXJlbnQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd3NNZXNzYWdlKGV2ZW50OiBNZXNzYWdlRXZlbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLmxvZy50cmFjZSgnUmVjZWl2ZWQgbWVzc2FnZSBldmVudCBmcm9tIHBhcmVudDonLCBldmVudCk7XG4gICAgaWYgKGV2ZW50ICYmIGV2ZW50LmRhdGEpIHtcbiAgICAgIGlmIChEYXRhVmlld01lc3NhZ2UuaXNPZlR5cGUoZXZlbnQuZGF0YSkpIHtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoJ1JlY2VpdmVkIGRhdGEgdmlldyBtZXNzYWdlIGZyb20gcGFyZW50OicsIGV2ZW50KTtcbiAgICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbVBhcmVudChldmVudC5kYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gaW5kaWNhdGluZyBpZnJhbWUgaG9zdCB0aGF0IHdlIGFyZSByZWFkeSAoZS5nLiByZWFkeSB0byByZWNlaXZlIG1lc3NhZ2VzKVxuICAgIHRoaXMuaWZyYW1lU2VydmljZS5wb3N0Vmlld1JlYWR5RXZlbnRNZXNzYWdlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZU1lc3NhZ2VGcm9tUGFyZW50KG1lc3NhZ2U6IERhdGFWaWV3TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSAnU0VMRUNUSU9OX0lOSVQnOlxuICAgICAgICB0aGlzLmluaXRpYWxpemVEYXRhVmlldyhtZXNzYWdlLmRhdGEpXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZURhdGFWaWV3KGluaXQ6IERhdGFWaWV3U2VsZWN0aW9uSW5pdDxhbnk+KTogdm9pZCB7XG5cbiAgICAvLyB1cGRhdGluZyBvcHRpb25zIG9mIGNoaWxkIGRhdGEgdmlldyBnaXZlbiBieSBpZnJhbWUgcGFyZW50XG4gICAgdGhpcy5kYXRhVmlld09wdGlvbnNQcm92aWRlci51cGRhdGVPcHRpb25zKFxuICAgICAgb3B0aW9ucyA9PiBvcHRpb25zLndpdGhPcHRpb25zKGluaXQub3B0aW9ucylcbiAgICApXG5cbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmtleUdldHRlckZuID0gKGVudGl0eSkgPT4gZW50aXR5W2luaXQuaWRGaWVsZF07XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5pc011bHRpcGxlU2VsZWN0aW9uID0gaW5pdC5vcHRpb25zLnNlbGVjdGlvbk11bHRpRW5hYmxlZDtcbiAgICBpZiAoaW5pdC5pbml0aWFsU2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oaW5pdC5pbml0aWFsU2VsZWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHByb3BhZ2F0ZVNlbGVjdGlvblRvUGFyZW50KHNlbGVjdGlvbjogYW55W10pOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnUHJvcGFnYXRpbmcgc2VsZWN0aW9uIHRvIGlmcmFtZSBwYXJlbnQ6Jywgc2VsZWN0aW9uKTtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLmJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb24pO1xuICAgIHRoaXMuaWZyYW1lU2VydmljZS5wb3N0RGF0YU1lc3NhZ2UobWVzc2FnZSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb246IGFueVtdKTogRGF0YVZpZXdNZXNzYWdlPGFueT4ge1xuICAgIHJldHVybiBEYXRhVmlld01lc3NhZ2Uuc2VsZWN0aW9uKG5ldyBEYXRhVmlld1NlbGVjdGlvbihzZWxlY3Rpb24pKTtcbiAgfVxuXG59XG4iXX0=
@@ -2,6 +2,7 @@ import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input,
2
2
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
3
  import { BehaviorSubject } from 'rxjs';
4
4
  import { TypedEventMessage } from '../typed-event-message';
5
+ import { IframeMessages } from '../iframe-messages';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/common";
7
8
  import * as i2 from "@angular/material/icon";
@@ -18,7 +19,10 @@ export class IFrameState {
18
19
  return this.type === 'LOADING';
19
20
  }
20
21
  get hasLoaded() {
21
- return this.type == 'LOADED';
22
+ return this.type === 'LOADED';
23
+ }
24
+ get isViewReady() {
25
+ return this.type === 'VIEW_READY';
22
26
  }
23
27
  get hasError() {
24
28
  return this.type === 'ERROR';
@@ -54,10 +58,11 @@ export class IframeHostComponent {
54
58
  * @param event message from child window
55
59
  */
56
60
  onWindowMessage(event) {
57
- this.log.debug('Received message from child:', event);
58
- if (event) {
59
- if (TypedEventMessage.isOfType(event.data))
61
+ if (event && event.data) {
62
+ if (TypedEventMessage.isOfType(event.data)) {
63
+ this.log.debug('Received message from child:', event.data);
60
64
  this.handleMessageFromChild(event.data);
65
+ }
61
66
  }
62
67
  return true;
63
68
  }
@@ -102,9 +107,12 @@ export class IframeHostComponent {
102
107
  **************************************************************************/
103
108
  handleMessageFromChild(message) {
104
109
  this.message.next(message);
105
- if (message.type === 'CLOSE') {
110
+ if (message.type === IframeMessages.CLOSE) {
106
111
  this.close.emit(message.data);
107
112
  }
113
+ if (message.type === IframeMessages.VIEW_READY_EVENT) {
114
+ this.iframeState$.next(new IFrameState('VIEW_READY'));
115
+ }
108
116
  }
109
117
  }
110
118
  IframeHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IframeHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -125,4 +133,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
125
133
  }], iframeParams: [{
126
134
  type: Input
127
135
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7O0FBSXpELE1BQU0sT0FBTyxXQUFXO0lBRXRCLFlBQ2tCLElBQXFCLEVBQ3JCLFVBQXlCLElBQUk7UUFEN0IsU0FBSSxHQUFKLElBQUksQ0FBaUI7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7SUFFL0MsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFBO0lBQ2hDLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUM7SUFDL0IsQ0FB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LGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXlCL0IsWUFBWTtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5cbmV4cG9ydCB0eXBlIElGcmFtZVN0YXRlVHlwZSA9ICdMT0FESU5HJyB8ICdMT0FERUQnIHwgJ0VSUk9SJztcblxuZXhwb3J0IGNsYXNzIElGcmFtZVN0YXRlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogSUZyYW1lU3RhdGVUeXBlLFxuICAgIHB1YmxpYyByZWFkb25seSBtZXNzYWdlOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdMT0FESU5HJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNMb2FkZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PSAnTE9BREVEJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnRVJST1InO1xuICB9XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRnJhbWVQYXJhbXMge1xuXG4gIC8qKlxuICAgKiBTb3VyY2UgVVJMIG9mIGlmcmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY1VybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEhlaWdodCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYm90dG9tIGFjdGlvbiBiYXJcbiAgICogaXMgaGlkZGVuLlxuICAgKi9cbiAgcmVhZG9ubHkgaGlkZUFjdGlvbkJhcj86IGJvb2xlYW47XG5cbn1cblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1pLWZyYW1lLWhvc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vaWZyYW1lLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBpZnJhbWVTdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVN0YXRlPihuZXcgSUZyYW1lU3RhdGUoJ0xPQURJTkcnKSk7XG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lJylcbiAgcHVibGljIGlmcmFtZTogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG1lc3NhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBtZXNzYWdlcyBmcm9tIHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBjaGlsZCB3aW5kb3cuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gY2hpbGQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd01lc3NhZ2UoZXZlbnQ6IE1lc3NhZ2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIHRoaXMubG9nLmRlYnVnKCdSZWNlaXZlZCBtZXNzYWdlIGZyb20gY2hpbGQ6JywgZXZlbnQpO1xuICAgIGlmIChldmVudCkge1xuICAgICAgaWYgKFR5cGVkRXZlbnRNZXNzYWdlLmlzT2ZUeXBlKGV2ZW50LmRhdGEpKVxuICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbUNoaWxkKGV2ZW50LmRhdGEpO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlY3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWZyYW1lUGFyYW1zKHBhcmFtczogSUZyYW1lUGFyYW1zKSB7XG4gICAgdGhpcy5pZnJhbWVQYXJhbXMkLm5leHQocGFyYW1zKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvbklmcmFtZUxvYWRFdmVudChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnRmluaXNoZWQgbG9hZGluZyBpZnJhbWUnLCBldmVudCk7XG4gICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ0xPQURFRCcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbklmcmFtZUVycm9yRXZlbnQoZXJyOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy53YXJuKCdGYWlsZWQgdG8gbG9hZCBpZnJhbWUnLCBlcnIpO1xuICAgIHRoaXMuaWZyYW1lU3RhdGUkLm5leHQobmV3IElGcmFtZVN0YXRlKCdFUlJPUicsIGVyciArICcnKSk7XG4gIH1cblxuICBwdWJsaWMgc2VuZE1lc3NhZ2VUb0NoaWxkKG1zZzogVHlwZWRFdmVudE1lc3NhZ2U8YW55LGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnU2VuZGluZyBtZXNzYWdlIHRvIGlmcmFtZSBjaGlsZDonLCBtc2cpO1xuICAgIHRoaXMuaWZyYW1lLm5hdGl2ZUVsZW1lbnQuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZShtc2csIFwiKlwiKTtcbiAgfVxuXG4gIHB1YmxpYyBkb0Nsb3NlKGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlTWVzc2FnZUZyb21DaGlsZChtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2UubmV4dChtZXNzYWdlKTtcblxuICAgIGlmIChtZXNzYWdlLnR5cGUgPT09ICdDTE9TRScpIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChtZXNzYWdlLmRhdGEpO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwie3N0YXRlOiBpZnJhbWVTdGF0ZSQgfCBhc3luYywgcGFyYW1zOiBpZnJhbWVQYXJhbXMkIHwgYXN5bmN9IGFzIGN0eFwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiPlxuXG4gICAgICAgIDwhLS0gSW4gQ2FzZSBvZiBFcnJvciAtLT5cbiAgICAgICAgPGRpdiAqbmdJZj1cImN0eC5zdGF0ZS5oYXNFcnJvclwiXG4gICAgICAgICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWNlbnRlci1jZW50ZXIgZmxleFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuPkZhaWxlZCB0byBsb2FkIElmcmFtZToge3tjdHguc3RhdGUubWVzc2FnZX19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIElGcmFtZSAtLT5cbiAgICAgICAgPGlmcmFtZSAjaWZyYW1lXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhY3R4LnN0YXRlLmhhc0Vycm9yXCJcbiAgICAgICAgICAgICAgICAobG9hZCk9XCJvbklmcmFtZUxvYWRFdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoZXJyb3IpPVwib25JZnJhbWVFcnJvckV2ZW50KCRldmVudClcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiY3R4LnBhcmFtcy5zcmNVcmwgfCBlbGRlclNhZmVVcmxcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaWZyYW1lIGZsZXhcIlxuICAgICAgICAgICAgICAgIGFsbG93PVwiY2xpcGJvYXJkICo7Y2xpcGJvYXJkLXJlYWQgKjtjbGlwYm9hcmQtd3JpdGUgKjtcIlxuICAgICAgICA+PC9pZnJhbWU+XG5cbiAgICAgICAgPCEtLSBCb3R0b20gVG9vbGJhciAtLT5cbiAgICAgIDxtYXQtdG9vbGJhciAqbmdJZj1cIiFjdHgucGFyYW1zLmhpZGVBY3Rpb25CYXJcIiBlbGRlclRoZW1lIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1iZXR3ZWVuLWNlbnRlciBmbGV4LW5vbmUgZWxkZXItZGVuc2UtdG9vbGJhclwiPlxuXG4gICAgICAgIDxhIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZG9DbG9zZSgkZXZlbnQpXCIgY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYT5cblxuICAgICAgICA8YSBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiXG4gICAgICAgICAgIFtocmVmXT1cImN0eC5wYXJhbXMuc3JjVXJsIHwgZWxkZXJTYWZlVXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICAgICAgPG1hdC1pY29uPm9wZW5faW5fbmV3PC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9tYXQtdG9vbGJhcj5cbiAgPC9kaXY+XG5cbjwvbmctY29udGFpbmVyPlxuXG5cblxuIl19
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7OztBQUlsRCxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUNrQixJQUFxQixFQUNyQixVQUF5QixJQUFJO1FBRDdCLFNBQUksR0FBSixJQUFJLENBQWlCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBRS9DLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixP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Q0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7U0FDdkQ7SUFDSCxDQUFDOztnSEFsSFUsbUJBQW1CO29HQUFuQixtQkFBbUIsNlRDbEVoQyxnMENBdUNBOzJGRDJCYSxtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU07MEVBZ0J4QyxNQUFNO3NCQURaLFNBQVM7dUJBQUMsUUFBUTtnQkFJWixPQUFPO3NCQURiLE1BQU07Z0JBSUEsS0FBSztzQkFEWCxNQUFNO2dCQXdCQSxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQTJCL0IsWUFBWTtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0lmcmFtZU1lc3NhZ2VzfSBmcm9tICcuLi9pZnJhbWUtbWVzc2FnZXMnO1xuXG5leHBvcnQgdHlwZSBJRnJhbWVTdGF0ZVR5cGUgPSAnTE9BRElORycgfCAnTE9BREVEJyB8ICdWSUVXX1JFQURZJyB8ICdFUlJPUic7XG5cbmV4cG9ydCBjbGFzcyBJRnJhbWVTdGF0ZSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHR5cGU6IElGcmFtZVN0YXRlVHlwZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnTE9BRElORydcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzTG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdMT0FERUQnXG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVmlld1JlYWR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdWSUVXX1JFQURZJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnRVJST1InO1xuICB9XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRnJhbWVQYXJhbXMge1xuXG4gIC8qKlxuICAgKiBTb3VyY2UgVVJMIG9mIGlmcmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY1VybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEhlaWdodCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYm90dG9tIGFjdGlvbiBiYXJcbiAgICogaXMgaGlkZGVuLlxuICAgKi9cbiAgcmVhZG9ubHkgaGlkZUFjdGlvbkJhcj86IGJvb2xlYW47XG5cbn1cblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1pLWZyYW1lLWhvc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vaWZyYW1lLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBpZnJhbWVTdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVN0YXRlPihuZXcgSUZyYW1lU3RhdGUoJ0xPQURJTkcnKSk7XG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lJylcbiAgcHVibGljIGlmcmFtZTogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG1lc3NhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBtZXNzYWdlcyBmcm9tIHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBjaGlsZCB3aW5kb3cuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gY2hpbGQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd01lc3NhZ2UoZXZlbnQ6IE1lc3NhZ2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIGlmIChldmVudCAmJiBldmVudC5kYXRhKSB7XG4gICAgICBpZiAoVHlwZWRFdmVudE1lc3NhZ2UuaXNPZlR5cGUoZXZlbnQuZGF0YSkpe1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnUmVjZWl2ZWQgbWVzc2FnZSBmcm9tIGNoaWxkOicsIGV2ZW50LmRhdGEpO1xuICAgICAgICB0aGlzLmhhbmRsZU1lc3NhZ2VGcm9tQ2hpbGQoZXZlbnQuZGF0YSk7XG4gICAgICB9XG5cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZWN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlmcmFtZVBhcmFtcyhwYXJhbXM6IElGcmFtZVBhcmFtcykge1xuICAgIHRoaXMuaWZyYW1lUGFyYW1zJC5uZXh0KHBhcmFtcyk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25JZnJhbWVMb2FkRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ0ZpbmlzaGVkIGxvYWRpbmcgaWZyYW1lJywgZXZlbnQpO1xuICAgIHRoaXMuaWZyYW1lU3RhdGUkLm5leHQobmV3IElGcmFtZVN0YXRlKCdMT0FERUQnKSk7XG4gIH1cblxuICBwdWJsaWMgb25JZnJhbWVFcnJvckV2ZW50KGVycjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5sb2cud2FybignRmFpbGVkIHRvIGxvYWQgaWZyYW1lJywgZXJyKTtcbiAgICB0aGlzLmlmcmFtZVN0YXRlJC5uZXh0KG5ldyBJRnJhbWVTdGF0ZSgnRVJST1InLCBlcnIgKyAnJykpO1xuICB9XG5cbiAgcHVibGljIHNlbmRNZXNzYWdlVG9DaGlsZChtc2c6IFR5cGVkRXZlbnRNZXNzYWdlPGFueSxhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ1NlbmRpbmcgbWVzc2FnZSB0byBpZnJhbWUgY2hpbGQ6JywgbXNnKTtcbiAgICB0aGlzLmlmcmFtZS5uYXRpdmVFbGVtZW50LmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UobXNnLCBcIipcIik7XG4gIH1cblxuICBwdWJsaWMgZG9DbG9zZShldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZU1lc3NhZ2VGcm9tQ2hpbGQobWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8YW55LCBhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlLm5leHQobWVzc2FnZSk7XG5cbiAgICBpZiAobWVzc2FnZS50eXBlID09PSBJZnJhbWVNZXNzYWdlcy5DTE9TRSkge1xuICAgICAgdGhpcy5jbG9zZS5lbWl0KG1lc3NhZ2UuZGF0YSk7XG4gICAgfVxuXG4gICAgaWYgKG1lc3NhZ2UudHlwZSA9PT0gSWZyYW1lTWVzc2FnZXMuVklFV19SRUFEWV9FVkVOVCkge1xuICAgICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ1ZJRVdfUkVBRFknKSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ7c3RhdGU6IGlmcmFtZVN0YXRlJCB8IGFzeW5jLCBwYXJhbXM6IGlmcmFtZVBhcmFtcyQgfCBhc3luY30gYXMgY3R4XCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG5cbiAgICAgICAgPCEtLSBJbiBDYXNlIG9mIEVycm9yIC0tPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY3R4LnN0YXRlLmhhc0Vycm9yXCJcbiAgICAgICAgICAgICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2UtY2VudGVyLWNlbnRlciBmbGV4XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+RmFpbGVkIHRvIGxvYWQgSWZyYW1lOiB7e2N0eC5zdGF0ZS5tZXNzYWdlfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gSUZyYW1lIC0tPlxuICAgICAgICA8aWZyYW1lICNpZnJhbWVcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdHguc3RhdGUuaGFzRXJyb3JcIlxuICAgICAgICAgICAgICAgIChsb2FkKT1cIm9uSWZyYW1lTG9hZEV2ZW50KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChlcnJvcik9XCJvbklmcmFtZUVycm9yRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJjdHgucGFyYW1zLnNyY1VybCB8IGVsZGVyU2FmZVVybFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpZnJhbWUgZmxleFwiXG4gICAgICAgICAgICAgICAgYWxsb3c9XCJjbGlwYm9hcmQgKjtjbGlwYm9hcmQtcmVhZCAqO2NsaXBib2FyZC13cml0ZSAqO1wiXG4gICAgICAgID48L2lmcmFtZT5cblxuICAgICAgICA8IS0tIEJvdHRvbSBUb29sYmFyIC0tPlxuICAgICAgPG1hdC10b29sYmFyICpuZ0lmPVwiIWN0eC5wYXJhbXMuaGlkZUFjdGlvbkJhclwiIGVsZGVyVGhlbWUgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWJldHdlZW4tY2VudGVyIGZsZXgtbm9uZSBlbGRlci1kZW5zZS10b29sYmFyXCI+XG5cbiAgICAgICAgPGEgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJkb0Nsb3NlKCRldmVudClcIiBjbGFzcz1cImVsZGVyLWljb24tYnV0dG9uLXNtXCI+XG4gICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuXG4gICAgICAgIDxhIG1hdC1pY29uLWJ1dHRvbiBjbGFzcz1cImVsZGVyLWljb24tYnV0dG9uLXNtXCJcbiAgICAgICAgICAgW2hyZWZdPVwiY3R4LnBhcmFtcy5zcmNVcmwgfCBlbGRlclNhZmVVcmxcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICA8bWF0LWljb24+b3Blbl9pbl9uZXc8L21hdC1pY29uPlxuICAgICAgICA8L2E+XG4gICAgICA8L21hdC10b29sYmFyPlxuICA8L2Rpdj5cblxuPC9uZy1jb250YWluZXI+XG5cblxuXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export class IframeMessages {
2
+ }
3
+ IframeMessages.CLOSE = 'CLOSE';
4
+ IframeMessages.VIEW_READY_EVENT = 'VIEW_READY_EVENT';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLW1lc3NhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1tZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLE9BQU8sY0FBYzs7QUFFRixvQkFBSyxHQUFHLE9BQU8sQ0FBQztBQUVoQiwrQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGNsYXNzIElmcmFtZU1lc3NhZ2VzIHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENMT1NFID0gJ0NMT1NFJztcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFZJRVdfUkVBRFlfRVZFTlQgPSAnVklFV19SRUFEWV9FVkVOVCc7XG5cblxufVxuIl19