@datorama/core 22.5.5 → 22.6.2

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.
@@ -6,17 +6,29 @@
6
6
  * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
7
7
  */
8
8
  import { __decorate, __metadata } from "tslib";
9
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
9
+ import { ChangeDetectionStrategy, Component, ElementRef, Input } from '@angular/core';
10
10
  import { GridQuery } from '../grid-store/grid.query';
11
11
  import { of } from 'rxjs';
12
12
  import { deepmerge } from '../../internal/deep-merge';
13
13
  import { GridService } from '../grid-store/grid.service';
14
14
  var DatoGridV2NoDataOverlayComponent = /** @class */ (function () {
15
- function DatoGridV2NoDataOverlayComponent(gridQuery, gridService) {
15
+ function DatoGridV2NoDataOverlayComponent(gridQuery, gridService, element) {
16
16
  this.gridQuery = gridQuery;
17
17
  this.gridService = gridService;
18
+ this.element = element;
18
19
  this.config = {};
19
20
  }
21
+ Object.defineProperty(DatoGridV2NoDataOverlayComponent.prototype, "showImage", {
22
+ get: function () {
23
+ var elParent = this.element.nativeElement.parentElement;
24
+ if (elParent.classList.contains('ag-overlay-wrapper')) {
25
+ return elParent.offsetHeight >= 390;
26
+ }
27
+ return true;
28
+ },
29
+ enumerable: true,
30
+ configurable: true
31
+ });
20
32
  DatoGridV2NoDataOverlayComponent.prototype.ngOnInit = function () {
21
33
  this.filterActive$ = this.gridQuery.filterActive$;
22
34
  this.hasError$ = this.gridQuery.isServerSide ? this.gridQuery.serverSideError$ : of(false);
@@ -48,7 +60,8 @@ var DatoGridV2NoDataOverlayComponent = /** @class */ (function () {
48
60
  };
49
61
  DatoGridV2NoDataOverlayComponent.ctorParameters = function () { return [
50
62
  { type: GridQuery },
51
- { type: GridService }
63
+ { type: GridService },
64
+ { type: ElementRef }
52
65
  ]; };
53
66
  __decorate([
54
67
  Input(),
@@ -57,13 +70,13 @@ var DatoGridV2NoDataOverlayComponent = /** @class */ (function () {
57
70
  DatoGridV2NoDataOverlayComponent = __decorate([
58
71
  Component({
59
72
  selector: 'dato-grid-v2-no-data-overlay',
60
- template: "<div class=\"container d-flex-column align-center\">\n <ng-container *ngIf=\"(hasError$ | async) === false; else error\">\n <ng-container *ngIf=\"(filterActive$ | async) === true; else noData\">\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.noResult }\"></ng-container>\n <div class=\"d-flex items-center\">\n <div class=\"dato-simple primary-400-color\">{{'core.try-to-adjust-or' | translate}}&nbsp;</div>\n <dato-link (click)=\"clearFilters()\">{{ 'core.clear-filters' | translate }}</dato-link>\n </div>\n </ng-container>\n <ng-template #noData>\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.noData}\"></ng-container>\n <ng-content select=\"[no-data-content]\"></ng-content>\n </ng-template>\n\n </ng-container>\n <ng-template #error>\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.serverSideError}\"></ng-container>\n <div #errorContent><ng-content select=\"[server-error-content]\"></ng-content></div>\n <div class=\"dato-simple primary-400-color\" *ngIf=\"errorContent.children.length === 0\">{{'core.try-to-refresh-or-contact' | translate}}&nbsp;</div>\n </ng-template>\n</div>\n\n<ng-template #imgNText let-view>\n <img class=\"mb-30\" [datoStaticSrc]=\"view.icon\">\n <div class=\"dato-simple-bold primary-500-color mb-3\">{{ view.text | translate }}</div>\n</ng-template>\n",
73
+ template: "<div class=\"container d-flex-column align-center\">\n <ng-container *ngIf=\"(hasError$ | async) === false; else error\">\n <ng-container *ngIf=\"(filterActive$ | async) === true; else noData\">\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.noResult }\"></ng-container>\n <div class=\"d-flex items-center\">\n <div class=\"dato-simple primary-400-color\">{{'core.try-to-adjust-or' | translate}}&nbsp;</div>\n <dato-link (click)=\"clearFilters()\">{{ 'core.clear-filters' | translate }}</dato-link>\n </div>\n </ng-container>\n <ng-template #noData>\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.noData}\"></ng-container>\n <ng-content select=\"[no-data-content]\"></ng-content>\n </ng-template>\n\n </ng-container>\n <ng-template #error>\n <ng-container *ngTemplateOutlet=\"imgNText; context: {$implicit: mergedConfig.serverSideError}\"></ng-container>\n <div #errorContent><ng-content select=\"[server-error-content]\"></ng-content></div>\n <div class=\"dato-simple primary-400-color\" *ngIf=\"errorContent.children.length === 0\">{{'core.try-to-refresh-or-contact' | translate}}&nbsp;</div>\n </ng-template>\n</div>\n\n<ng-template #imgNText let-view>\n <img class=\"mb-30\" [datoStaticSrc]=\"view.icon\" *ngIf=\"showImage && view.icon\">\n <div class=\"dato-simple-bold primary-500-color mb-3\">{{ view.text | translate }}</div>\n</ng-template>\n",
61
74
  changeDetection: ChangeDetectionStrategy.OnPush,
62
75
  styles: [":host{pointer-events:all}"]
63
76
  }),
64
- __metadata("design:paramtypes", [GridQuery, GridService])
77
+ __metadata("design:paramtypes", [GridQuery, GridService, ElementRef])
65
78
  ], DatoGridV2NoDataOverlayComponent);
66
79
  return DatoGridV2NoDataOverlayComponent;
67
80
  }());
68
81
  export { DatoGridV2NoDataOverlayComponent };
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12Mi1uby1kYXRhLW92ZXJsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGRhdG9yYW1hL2NvcmUvIiwic291cmNlcyI6WyJsaWIvZ3JpZC12Mi9ncmlkLW5vLWRhdGEtb3ZlcmxheS9ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOztBQUVILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFpQnpEO0lBUUUsMENBQW9CLFNBQW9CLEVBQVUsV0FBd0I7UUFBdEQsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBUGpFLFdBQU0sR0FBeUIsRUFBRSxDQUFDO0lBT2tDLENBQUM7SUFFOUUsbURBQVEsR0FBUjtRQUNFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7UUFDbEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUMsY0FBYyxJQUFJLEVBQUUsQ0FBQztRQUN4RSxJQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBc0IsQ0FBQztJQUNyRixDQUFDO0lBRUQsdURBQVksR0FBWjtRQUNFLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELGlEQUFNLEdBQU4sVUFBTyxNQUE0QixJQUFTLENBQUM7SUFFckMsNERBQWlCLEdBQXpCO1FBQ1UsSUFBQSwyREFBWSxDQUFxQztRQUV6RCxJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixJQUFJLEVBQUUsMEJBQTBCO2FBQ2pDO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSwwQkFBMEI7Z0JBQ2hDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLGlDQUFpQyxDQUFDLENBQUMsQ0FBQywwQkFBMEI7YUFDcEY7WUFDRCxlQUFlLEVBQUU7Z0JBQ2YsSUFBSSxFQUFFLHFCQUFxQjtnQkFDM0IsSUFBSSxFQUFFLDBCQUEwQjthQUNqQztTQUNGLENBQUM7SUFDSixDQUFDOztnQkFsQzhCLFNBQVM7Z0JBQXVCLFdBQVc7O0lBUGpFO1FBQVIsS0FBSyxFQUFFOztvRUFBbUM7SUFEaEMsZ0NBQWdDO1FBTjVDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSw4QkFBOEI7WUFDeEMsa2lEQUF1RDtZQUV2RCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FDaEQsQ0FBQzt5Q0FTK0IsU0FBUyxFQUF1QixXQUFXO09BUi9ELGdDQUFnQyxDQTJDNUM7SUFBRCx1Q0FBQztDQUFBLEFBM0NELElBMkNDO1NBM0NZLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBEYXRvcmFtYS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBBcGFjaGUgTGljZW5zZSAyLjAgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2dpdGh1Yi5jb20vZGF0b3JhbWEvY2xpZW50LWNvcmUvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTm9Sb3dzT3ZlcmxheUFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IElOb1Jvd3NPdmVybGF5UGFyYW1zIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgR3JpZFF1ZXJ5IH0gZnJvbSAnLi4vZ3JpZC1zdG9yZS9ncmlkLnF1ZXJ5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWVwbWVyZ2UgfSBmcm9tICcuLi8uLi9pbnRlcm5hbC9kZWVwLW1lcmdlJztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi4vZ3JpZC1zdG9yZS9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0b0dyaWRPdmVybGF5SW5wdXQgfSBmcm9tICcuL2dyaWQtdjItbm8tZGF0YS1vdmVybGF5LnR5cGVzJztcblxudHlwZSBPdmVybGF5VmlldyA9IHsgaWNvbjogc3RyaW5nOyB0ZXh0OiBzdHJpbmcgfTtcblxudHlwZSBHcmlkT3ZlcmxheUNvbmZpZyA9IHtcbiAgbm9EYXRhOiBPdmVybGF5VmlldztcbiAgbm9SZXN1bHQ6IE92ZXJsYXlWaWV3O1xuICBzZXJ2ZXJTaWRlRXJyb3I6IE92ZXJsYXlWaWV3O1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGF0by1ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQtdjItbm8tZGF0YS1vdmVybGF5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERhdG9HcmlkVjJOb0RhdGFPdmVybGF5Q29tcG9uZW50IGltcGxlbWVudHMgSU5vUm93c092ZXJsYXlBbmd1bGFyQ29tcCB7XG4gIEBJbnB1dCgpIGNvbmZpZzogRGF0b0dyaWRPdmVybGF5SW5wdXQgPSB7fTtcbiAgbWVyZ2VkQ29uZmlnOiBHcmlkT3ZlcmxheUNvbmZpZztcbiAgZmlsdGVyQWN0aXZlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzRXJyb3IkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgZGVmYXVsdENvbmZpZzogRGF0b0dyaWRPdmVybGF5SW5wdXQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBncmlkUXVlcnk6IEdyaWRRdWVyeSwgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZFNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5maWx0ZXJBY3RpdmUkID0gdGhpcy5ncmlkUXVlcnkuZmlsdGVyQWN0aXZlJDtcbiAgICB0aGlzLmhhc0Vycm9yJCA9IHRoaXMuZ3JpZFF1ZXJ5LmlzU2VydmVyU2lkZSA/IHRoaXMuZ3JpZFF1ZXJ5LnNlcnZlclNpZGVFcnJvciQgOiBvZihmYWxzZSk7XG4gICAgdGhpcy5pbml0RGVmYXVsdENvbmZpZygpO1xuICAgIGNvbnN0IGdyaWRDb25maWcgPSB0aGlzLmdyaWRRdWVyeS5nZXRHcmlkT3B0aW9ucygpLm92ZXJsYXlzQ29uZmlnIHx8IHt9O1xuICAgIGNvbnN0IHVzZXJDb25maWcgPSBkZWVwbWVyZ2UoZ3JpZENvbmZpZywgdGhpcy5jb25maWcpO1xuICAgIHRoaXMubWVyZ2VkQ29uZmlnID0gZGVlcG1lcmdlKHRoaXMuZGVmYXVsdENvbmZpZywgdXNlckNvbmZpZykgYXMgR3JpZE92ZXJsYXlDb25maWc7XG4gIH1cblxuICBjbGVhckZpbHRlcnMoKSB7XG4gICAgdGhpcy5ncmlkU2VydmljZS5jbGVhckFsbEZpbHRlcnMoKTtcbiAgfVxuXG4gIGFnSW5pdChwYXJhbXM6IElOb1Jvd3NPdmVybGF5UGFyYW1zKTogdm9pZCB7fVxuXG4gIHByaXZhdGUgaW5pdERlZmF1bHRDb25maWcoKSB7XG4gICAgY29uc3QgeyBlbmFibGVTZWFyY2ggfSA9IHRoaXMuZ3JpZFF1ZXJ5LmdldEdyaWRPcHRpb25zKCk7XG5cbiAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7XG4gICAgICBub0RhdGE6IHtcbiAgICAgICAgaWNvbjogJ2NvcmUvZ3JpZC9uby1kYXRhLnN2ZycsXG4gICAgICAgIHRleHQ6ICdjb3JlLm5vLWl0ZW1zLXRvLWRpc3BsYXknXG4gICAgICB9LFxuICAgICAgbm9SZXN1bHQ6IHtcbiAgICAgICAgaWNvbjogJ2NvcmUvZ3JpZC9uby1yZXN1bHRzLnN2ZycsXG4gICAgICAgIHRleHQ6IGVuYWJsZVNlYXJjaCA/ICdjb3JlLm5vLW1hdGNoaW5nLXNlYXJjaC1yZXN1bHRzJyA6ICdjb3JlLm5vLW1hdGNoaW5nLXJlc3VsdHMnXG4gICAgICB9LFxuICAgICAgc2VydmVyU2lkZUVycm9yOiB7XG4gICAgICAgIGljb246ICdjb3JlL2dyaWQvYWxlcnQuc3ZnJyxcbiAgICAgICAgdGV4dDogJ2NvcmUudW5hYmxlLXRvLWxvYWQtZGF0YSdcbiAgICAgIH1cbiAgICB9O1xuICB9XG59XG4iXX0=
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12Mi1uby1kYXRhLW92ZXJsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGRhdG9yYW1hL2NvcmUvIiwic291cmNlcyI6WyJsaWIvZ3JpZC12Mi9ncmlkLW5vLWRhdGEtb3ZlcmxheS9ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOztBQUVILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd0RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBaUJ6RDtJQWtCRSwwQ0FBb0IsU0FBb0IsRUFBVSxXQUF3QixFQUFVLE9BQW1CO1FBQW5GLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFqQjlGLFdBQU0sR0FBeUIsRUFBRSxDQUFDO0lBaUIrRCxDQUFDO0lBVjNHLHNCQUFJLHVEQUFTO2FBQWI7WUFDRSxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUM7WUFFMUQsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO2dCQUNyRCxPQUFPLFFBQVEsQ0FBQyxZQUFZLElBQUksR0FBRyxDQUFDO2FBQ3JDO1lBRUQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDOzs7T0FBQTtJQUlELG1EQUFRLEdBQVI7UUFDRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7UUFDeEUsSUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQXNCLENBQUM7SUFDckYsQ0FBQztJQUVELHVEQUFZLEdBQVo7UUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxpREFBTSxHQUFOLFVBQU8sTUFBNEIsSUFBUyxDQUFDO0lBRXJDLDREQUFpQixHQUF6QjtRQUNVLElBQUEsMkRBQVksQ0FBcUM7UUFFekQsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUNuQixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLHVCQUF1QjtnQkFDN0IsSUFBSSxFQUFFLDBCQUEwQjthQUNqQztZQUNELFFBQVEsRUFBRTtnQkFDUixJQUFJLEVBQUUsMEJBQTBCO2dCQUNoQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDLENBQUMsMEJBQTBCO2FBQ3BGO1lBQ0QsZUFBZSxFQUFFO2dCQUNmLElBQUksRUFBRSxxQkFBcUI7Z0JBQzNCLElBQUksRUFBRSwwQkFBMEI7YUFDakM7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Z0JBbEM4QixTQUFTO2dCQUF1QixXQUFXO2dCQUFtQixVQUFVOztJQWpCOUY7UUFBUixLQUFLLEVBQUU7O29FQUFtQztJQURoQyxnQ0FBZ0M7UUFONUMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLDhCQUE4QjtZQUN4Qyxta0RBQXVEO1lBRXZELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztTQUNoRCxDQUFDO3lDQW1CK0IsU0FBUyxFQUF1QixXQUFXLEVBQW1CLFVBQVU7T0FsQjVGLGdDQUFnQyxDQXFENUM7SUFBRCx1Q0FBQztDQUFBLEFBckRELElBcURDO1NBckRZLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBEYXRvcmFtYS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBBcGFjaGUgTGljZW5zZSAyLjAgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2dpdGh1Yi5jb20vZGF0b3JhbWEvY2xpZW50LWNvcmUvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTm9Sb3dzT3ZlcmxheUFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IElOb1Jvd3NPdmVybGF5UGFyYW1zIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgR3JpZFF1ZXJ5IH0gZnJvbSAnLi4vZ3JpZC1zdG9yZS9ncmlkLnF1ZXJ5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWVwbWVyZ2UgfSBmcm9tICcuLi8uLi9pbnRlcm5hbC9kZWVwLW1lcmdlJztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi4vZ3JpZC1zdG9yZS9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0b0dyaWRPdmVybGF5SW5wdXQgfSBmcm9tICcuL2dyaWQtdjItbm8tZGF0YS1vdmVybGF5LnR5cGVzJztcblxudHlwZSBPdmVybGF5VmlldyA9IHsgaWNvbjogc3RyaW5nOyB0ZXh0OiBzdHJpbmcgfTtcblxudHlwZSBHcmlkT3ZlcmxheUNvbmZpZyA9IHtcbiAgbm9EYXRhOiBPdmVybGF5VmlldztcbiAgbm9SZXN1bHQ6IE92ZXJsYXlWaWV3O1xuICBzZXJ2ZXJTaWRlRXJyb3I6IE92ZXJsYXlWaWV3O1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGF0by1ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLXYyLW5vLWRhdGEtb3ZlcmxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQtdjItbm8tZGF0YS1vdmVybGF5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERhdG9HcmlkVjJOb0RhdGFPdmVybGF5Q29tcG9uZW50IGltcGxlbWVudHMgSU5vUm93c092ZXJsYXlBbmd1bGFyQ29tcCB7XG4gIEBJbnB1dCgpIGNvbmZpZzogRGF0b0dyaWRPdmVybGF5SW5wdXQgPSB7fTtcbiAgbWVyZ2VkQ29uZmlnOiBHcmlkT3ZlcmxheUNvbmZpZztcbiAgZmlsdGVyQWN0aXZlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzRXJyb3IkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgZGVmYXVsdENvbmZpZzogRGF0b0dyaWRPdmVybGF5SW5wdXQ7XG5cbiAgZ2V0IHNob3dJbWFnZSgpIHtcbiAgICBjb25zdCBlbFBhcmVudCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICBpZiAoZWxQYXJlbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdhZy1vdmVybGF5LXdyYXBwZXInKSkge1xuICAgICAgcmV0dXJuIGVsUGFyZW50Lm9mZnNldEhlaWdodCA+PSAzOTA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGdyaWRRdWVyeTogR3JpZFF1ZXJ5LCBwcml2YXRlIGdyaWRTZXJ2aWNlOiBHcmlkU2VydmljZSwgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZmlsdGVyQWN0aXZlJCA9IHRoaXMuZ3JpZFF1ZXJ5LmZpbHRlckFjdGl2ZSQ7XG4gICAgdGhpcy5oYXNFcnJvciQgPSB0aGlzLmdyaWRRdWVyeS5pc1NlcnZlclNpZGUgPyB0aGlzLmdyaWRRdWVyeS5zZXJ2ZXJTaWRlRXJyb3IkIDogb2YoZmFsc2UpO1xuICAgIHRoaXMuaW5pdERlZmF1bHRDb25maWcoKTtcbiAgICBjb25zdCBncmlkQ29uZmlnID0gdGhpcy5ncmlkUXVlcnkuZ2V0R3JpZE9wdGlvbnMoKS5vdmVybGF5c0NvbmZpZyB8fCB7fTtcbiAgICBjb25zdCB1c2VyQ29uZmlnID0gZGVlcG1lcmdlKGdyaWRDb25maWcsIHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLm1lcmdlZENvbmZpZyA9IGRlZXBtZXJnZSh0aGlzLmRlZmF1bHRDb25maWcsIHVzZXJDb25maWcpIGFzIEdyaWRPdmVybGF5Q29uZmlnO1xuICB9XG5cbiAgY2xlYXJGaWx0ZXJzKCkge1xuICAgIHRoaXMuZ3JpZFNlcnZpY2UuY2xlYXJBbGxGaWx0ZXJzKCk7XG4gIH1cblxuICBhZ0luaXQocGFyYW1zOiBJTm9Sb3dzT3ZlcmxheVBhcmFtcyk6IHZvaWQge31cblxuICBwcml2YXRlIGluaXREZWZhdWx0Q29uZmlnKCkge1xuICAgIGNvbnN0IHsgZW5hYmxlU2VhcmNoIH0gPSB0aGlzLmdyaWRRdWVyeS5nZXRHcmlkT3B0aW9ucygpO1xuXG4gICAgdGhpcy5kZWZhdWx0Q29uZmlnID0ge1xuICAgICAgbm9EYXRhOiB7XG4gICAgICAgIGljb246ICdjb3JlL2dyaWQvbm8tZGF0YS5zdmcnLFxuICAgICAgICB0ZXh0OiAnY29yZS5uby1pdGVtcy10by1kaXNwbGF5J1xuICAgICAgfSxcbiAgICAgIG5vUmVzdWx0OiB7XG4gICAgICAgIGljb246ICdjb3JlL2dyaWQvbm8tcmVzdWx0cy5zdmcnLFxuICAgICAgICB0ZXh0OiBlbmFibGVTZWFyY2ggPyAnY29yZS5uby1tYXRjaGluZy1zZWFyY2gtcmVzdWx0cycgOiAnY29yZS5uby1tYXRjaGluZy1yZXN1bHRzJ1xuICAgICAgfSxcbiAgICAgIHNlcnZlclNpZGVFcnJvcjoge1xuICAgICAgICBpY29uOiAnY29yZS9ncmlkL2FsZXJ0LnN2ZycsXG4gICAgICAgIHRleHQ6ICdjb3JlLnVuYWJsZS10by1sb2FkLWRhdGEnXG4gICAgICB9XG4gICAgfTtcbiAgfVxufVxuIl19