@onecx/angular-accelerator 5.23.6 → 5.25.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.
@@ -2,15 +2,17 @@ import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output,
2
2
  import { FormControlName, FormGroupDirective } from '@angular/forms';
3
3
  import { combineLatest, debounceTime, map, of, startWith } from 'rxjs';
4
4
  import { getLocation } from '@onecx/accelerator';
5
+ import { CONFIG_KEY, ConfigurationService } from '@onecx/angular-integration-interface';
5
6
  import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "primeng/tooltip";
8
- import * as i3 from "primeng/button";
9
- import * as i4 from "primeng/skeleton";
10
- import * as i5 from "@onecx/angular-remote-components";
11
- import * as i6 from "../page-header/page-header.component";
12
- import * as i7 from "../../directives/if-permission.directive";
13
- import * as i8 from "@ngx-translate/core";
7
+ import * as i1 from "@onecx/angular-integration-interface";
8
+ import * as i2 from "@angular/common";
9
+ import * as i3 from "primeng/tooltip";
10
+ import * as i4 from "primeng/button";
11
+ import * as i5 from "primeng/skeleton";
12
+ import * as i6 from "@onecx/angular-remote-components";
13
+ import * as i7 from "../page-header/page-header.component";
14
+ import * as i8 from "../../directives/if-permission.directive";
15
+ import * as i9 from "@ngx-translate/core";
14
16
  /**
15
17
  * To trigger the search when Enter key is pressed inside a search parameter field,
16
18
  * an EventListener for keyup enter event is added for HTML elements which have an input.
@@ -57,7 +59,7 @@ export class SearchHeaderComponent {
57
59
  get searchConfigChangeObserved() {
58
60
  return this.selectedSearchConfigChanged.observed;
59
61
  }
60
- constructor() {
62
+ constructor(configurationService) {
61
63
  this.header = '';
62
64
  this._viewMode = 'basic';
63
65
  this.manualBreadcrumbs = false;
@@ -77,6 +79,7 @@ export class SearchHeaderComponent {
77
79
  show: 'always',
78
80
  };
79
81
  this.headerActions = [];
82
+ this.searchButtonsReversed = false;
80
83
  this.fieldValues$ = of({});
81
84
  this.searchConfigChangedSlotEmitter = new EventEmitter();
82
85
  this.searchConfigChangedSlotEmitter.subscribe((config) => {
@@ -85,6 +88,8 @@ export class SearchHeaderComponent {
85
88
  });
86
89
  this.selectedSearchConfigChanged.emit(config);
87
90
  });
91
+ this.searchButtonsReversed =
92
+ configurationService.getProperty(CONFIG_KEY.ONECX_PORTAL_SEARCH_BUTTONS_REVERSED) === 'true';
88
93
  }
89
94
  ngAfterContentInit() {
90
95
  if (this.formGroup) {
@@ -139,13 +144,13 @@ export class SearchHeaderComponent {
139
144
  isVisible(control) {
140
145
  return this.visibleFormControls.some((formControl) => formControl.name !== null && String(formControl.name) === control);
141
146
  }
142
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SearchHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
143
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: SearchHeaderComponent, selector: "ocx-search-header", inputs: { header: "header", headline: "headline", subheader: "subheader", viewMode: "viewMode", manualBreadcrumbs: "manualBreadcrumbs", actions: "actions", searchConfigPermission: "searchConfigPermission", searchButtonDisabled: "searchButtonDisabled", resetButtonDisabled: "resetButtonDisabled", pageName: "pageName" }, outputs: { searched: "searched", resetted: "resetted", selectedSearchConfigChanged: "selectedSearchConfigChanged", viewModeChanged: "viewModeChanged", componentStateChanged: "componentStateChanged" }, providers: [], queries: [{ propertyName: "additionalToolbarContent", first: true, predicate: ["additionalToolbarContent"], descendants: true }, { propertyName: "additionalToolbarContentLeft", first: true, predicate: ["additionalToolbarContentLeft"], descendants: true }, { propertyName: "formGroup", first: true, predicate: FormGroupDirective, descendants: true }, { propertyName: "visibleFormControls", predicate: FormControlName, descendants: true }], viewQueries: [{ propertyName: "searchParameterFields", first: true, predicate: ["searchParameterFields"], descendants: true }], ngImport: i0, template: "<ocx-page-header\n [header]=\"header || ('OCX_SEARCH_HEADER.HEADER' | translate)\"\n [subheader]=\"subheader\"\n [manualBreadcrumbs]=\"manualBreadcrumbs\"\n [actions]=\"headerActions\"\n>\n <ng-template #additionalToolbarContentLeft>\n <ng-container *ngIf=\"searchConfigChangeObserved && pageName\">\n <ocx-slot\n *ocxIfPermission=\"searchConfigPermission\"\n name=\"onecx-search-config\"\n [inputs]=\"{ pageName: pageName, currentFieldValues: fieldValues$ | async, viewMode: viewMode }\"\n [outputs]=\"{ searchConfigSelected: searchConfigChangedSlotEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex\">\n <p-skeleton width=\"18rem\" height=\"3rem\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </ng-container>\n <ng-container\n *ngIf=\"_additionalToolbarContentLeft\"\n [ngTemplateOutlet]=\"_additionalToolbarContentLeft\"\n ></ng-container>\n </ng-template>\n <ng-template #additionalToolbarContent>\n <ng-container *ngIf=\"_additionalToolbarContent\" [ngTemplateOutlet]=\"_additionalToolbarContent\"></ng-container>\n </ng-template>\n <div class=\"flex row-gap-3 column-gap-6 flex-wrap align-items-center\">\n <div>\n <div #searchParameterFields>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <p-button\n id=\"resetButton\"\n *ngIf=\"resetted.observed\"\n (onClick)=\"onResetClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-eraser\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"resetButtonDisabled\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.RESET_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n\n <p-button\n id=\"searchButton\"\n (onClick)=\"onSearchClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-search\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"searchButtonDisabled || formGroup?.invalid\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.SEARCH_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n </div>\n </div>\n</ocx-page-header>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i4.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i5.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "component", type: i6.PageHeaderComponent, selector: "ocx-page-header", inputs: ["header", "loading", "figureBackground", "showFigure", "figureImage", "disableDefaultActions", "subheader", "actions", "objectDetails", "showBreadcrumbs", "manualBreadcrumbs", "enableGridView", "gridLayoutDesktopColumns"], outputs: ["save"] }, { kind: "directive", type: i7.IfPermissionDirective, selector: "[ocxIfPermission], [ocxIfNotPermission]", inputs: ["ocxIfPermission", "ocxIfNotPermission", "onMissingPermission", "ocxIfPermissionPermissions", "ocxIfNotPermissionPermissions", "ocxIfPermissionElseTemplate", "ocxIfNotPermissionElseTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SearchHeaderComponent, deps: [{ token: i1.ConfigurationService }], target: i0.ɵɵFactoryTarget.Component }); }
148
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: SearchHeaderComponent, selector: "ocx-search-header", inputs: { header: "header", headline: "headline", subheader: "subheader", viewMode: "viewMode", manualBreadcrumbs: "manualBreadcrumbs", actions: "actions", searchConfigPermission: "searchConfigPermission", searchButtonDisabled: "searchButtonDisabled", resetButtonDisabled: "resetButtonDisabled", pageName: "pageName" }, outputs: { searched: "searched", resetted: "resetted", selectedSearchConfigChanged: "selectedSearchConfigChanged", viewModeChanged: "viewModeChanged", componentStateChanged: "componentStateChanged" }, providers: [], queries: [{ propertyName: "additionalToolbarContent", first: true, predicate: ["additionalToolbarContent"], descendants: true }, { propertyName: "additionalToolbarContentLeft", first: true, predicate: ["additionalToolbarContentLeft"], descendants: true }, { propertyName: "formGroup", first: true, predicate: FormGroupDirective, descendants: true }, { propertyName: "visibleFormControls", predicate: FormControlName, descendants: true }], viewQueries: [{ propertyName: "searchParameterFields", first: true, predicate: ["searchParameterFields"], descendants: true }], ngImport: i0, template: "<ocx-page-header\n [header]=\"header || ('OCX_SEARCH_HEADER.HEADER' | translate)\"\n [subheader]=\"subheader\"\n [manualBreadcrumbs]=\"manualBreadcrumbs\"\n [actions]=\"headerActions\"\n>\n <ng-template #additionalToolbarContentLeft>\n <ng-container *ngIf=\"searchConfigChangeObserved && pageName\">\n <ocx-slot\n *ocxIfPermission=\"searchConfigPermission\"\n name=\"onecx-search-config\"\n [inputs]=\"{ pageName: pageName, currentFieldValues: fieldValues$ | async, viewMode: viewMode }\"\n [outputs]=\"{ searchConfigSelected: searchConfigChangedSlotEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex\">\n <p-skeleton width=\"18rem\" height=\"3rem\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </ng-container>\n <ng-container\n *ngIf=\"_additionalToolbarContentLeft\"\n [ngTemplateOutlet]=\"_additionalToolbarContentLeft\"\n ></ng-container>\n </ng-template>\n <ng-template #additionalToolbarContent>\n <ng-container *ngIf=\"_additionalToolbarContent\" [ngTemplateOutlet]=\"_additionalToolbarContent\"></ng-container>\n </ng-template>\n <div class=\"flex row-gap-3 column-gap-6 flex-wrap align-items-center\">\n <div>\n <div #searchParameterFields>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"flex flex-wrap gap-2\" [ngClass]=\"searchButtonsReversed ? 'flex-row-reverse' : 'flex-row'\">\n <p-button\n id=\"resetButton\"\n *ngIf=\"resetted.observed\"\n (onClick)=\"onResetClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-eraser\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"resetButtonDisabled\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.RESET_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n\n <p-button\n id=\"searchButton\"\n (onClick)=\"onSearchClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-search\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"searchButtonDisabled || formGroup?.invalid\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.SEARCH_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n </div>\n </div>\n</ocx-page-header>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i4.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i5.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i6.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "component", type: i7.PageHeaderComponent, selector: "ocx-page-header", inputs: ["header", "loading", "figureBackground", "showFigure", "figureImage", "disableDefaultActions", "subheader", "actions", "objectDetails", "showBreadcrumbs", "manualBreadcrumbs", "enableGridView", "gridLayoutDesktopColumns"], outputs: ["save"] }, { kind: "directive", type: i8.IfPermissionDirective, selector: "[ocxIfPermission], [ocxIfNotPermission]", inputs: ["ocxIfPermission", "ocxIfNotPermission", "onMissingPermission", "ocxIfPermissionPermissions", "ocxIfNotPermissionPermissions", "ocxIfPermissionElseTemplate", "ocxIfNotPermissionElseTemplate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] }); }
144
149
  }
145
150
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SearchHeaderComponent, decorators: [{
146
151
  type: Component,
147
- args: [{ selector: 'ocx-search-header', providers: [], template: "<ocx-page-header\n [header]=\"header || ('OCX_SEARCH_HEADER.HEADER' | translate)\"\n [subheader]=\"subheader\"\n [manualBreadcrumbs]=\"manualBreadcrumbs\"\n [actions]=\"headerActions\"\n>\n <ng-template #additionalToolbarContentLeft>\n <ng-container *ngIf=\"searchConfigChangeObserved && pageName\">\n <ocx-slot\n *ocxIfPermission=\"searchConfigPermission\"\n name=\"onecx-search-config\"\n [inputs]=\"{ pageName: pageName, currentFieldValues: fieldValues$ | async, viewMode: viewMode }\"\n [outputs]=\"{ searchConfigSelected: searchConfigChangedSlotEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex\">\n <p-skeleton width=\"18rem\" height=\"3rem\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </ng-container>\n <ng-container\n *ngIf=\"_additionalToolbarContentLeft\"\n [ngTemplateOutlet]=\"_additionalToolbarContentLeft\"\n ></ng-container>\n </ng-template>\n <ng-template #additionalToolbarContent>\n <ng-container *ngIf=\"_additionalToolbarContent\" [ngTemplateOutlet]=\"_additionalToolbarContent\"></ng-container>\n </ng-template>\n <div class=\"flex row-gap-3 column-gap-6 flex-wrap align-items-center\">\n <div>\n <div #searchParameterFields>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <p-button\n id=\"resetButton\"\n *ngIf=\"resetted.observed\"\n (onClick)=\"onResetClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-eraser\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"resetButtonDisabled\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.RESET_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n\n <p-button\n id=\"searchButton\"\n (onClick)=\"onSearchClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-search\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"searchButtonDisabled || formGroup?.invalid\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.SEARCH_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n </div>\n </div>\n</ocx-page-header>\n" }]
148
- }], ctorParameters: () => [], propDecorators: { header: [{
152
+ args: [{ selector: 'ocx-search-header', providers: [], template: "<ocx-page-header\n [header]=\"header || ('OCX_SEARCH_HEADER.HEADER' | translate)\"\n [subheader]=\"subheader\"\n [manualBreadcrumbs]=\"manualBreadcrumbs\"\n [actions]=\"headerActions\"\n>\n <ng-template #additionalToolbarContentLeft>\n <ng-container *ngIf=\"searchConfigChangeObserved && pageName\">\n <ocx-slot\n *ocxIfPermission=\"searchConfigPermission\"\n name=\"onecx-search-config\"\n [inputs]=\"{ pageName: pageName, currentFieldValues: fieldValues$ | async, viewMode: viewMode }\"\n [outputs]=\"{ searchConfigSelected: searchConfigChangedSlotEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex\">\n <p-skeleton width=\"18rem\" height=\"3rem\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </ng-container>\n <ng-container\n *ngIf=\"_additionalToolbarContentLeft\"\n [ngTemplateOutlet]=\"_additionalToolbarContentLeft\"\n ></ng-container>\n </ng-template>\n <ng-template #additionalToolbarContent>\n <ng-container *ngIf=\"_additionalToolbarContent\" [ngTemplateOutlet]=\"_additionalToolbarContent\"></ng-container>\n </ng-template>\n <div class=\"flex row-gap-3 column-gap-6 flex-wrap align-items-center\">\n <div>\n <div #searchParameterFields>\n <ng-content></ng-content>\n </div>\n </div>\n <div class=\"flex flex-wrap gap-2\" [ngClass]=\"searchButtonsReversed ? 'flex-row-reverse' : 'flex-row'\">\n <p-button\n id=\"resetButton\"\n *ngIf=\"resetted.observed\"\n (onClick)=\"onResetClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-eraser\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.RESET_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"resetButtonDisabled\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.RESET_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n\n <p-button\n id=\"searchButton\"\n (onClick)=\"onSearchClicked()\"\n label=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.TEXT' | translate }}\"\n icon=\"pi pi-search\"\n pTooltip=\"{{ 'OCX_SEARCH_HEADER.SEARCH_BUTTON.DETAIL' | translate }}\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n [disabled]=\"searchButtonDisabled || formGroup?.invalid\"\n [ariaLabel]=\"'OCX_SEARCH_HEADER.SEARCH_BUTTON.ARIA_LABEL' | translate\"\n >\n </p-button>\n </div>\n </div>\n</ocx-page-header>\n" }]
153
+ }], ctorParameters: () => [{ type: i1.ConfigurationService }], propDecorators: { header: [{
149
154
  type: Input
150
155
  }], headline: [{
151
156
  type: Input
@@ -191,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
191
196
  type: ViewChild,
192
197
  args: ['searchParameterFields']
193
198
  }] } });
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUVULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQUUsZUFBZSxFQUFhLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDL0UsT0FBTyxFQUFjLGFBQWEsRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBOzs7Ozs7Ozs7O0FBY2hEOzs7OztHQUtHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQzs7T0FFRztJQUNILElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtJQUNyQixDQUFDO0lBR0QsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFBO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxRQUE4QjtRQUN6QyxJQUFJLElBQUksQ0FBQyxRQUFR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QUNILENBQUM7OEdBcEtVLHFCQUFxQjtrR0FBckIscUJBQXFCLHFqQkFGckIsRUFBRSx1VEFxRUMsa0JBQWtCLHlFQUNmLGVBQWUsZ0xDOUdsQyw2N0VBaUVBOzsyRkR2QmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQixhQUVsQixFQUFFO3dEQUdKLE1BQU07c0JBQWQsS0FBSztnQkFNRixRQUFRO3NCQURYLEtBQUs7Z0JBT0csU0FBUztzQkFBakIsS0FBSztnQkFHRixRQUFRO3NCQURYLEtBQUs7Z0JBZUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdGLE9BQU87c0JBRFYsS0FBSztnQkFRRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRywyQkFBMkI7c0JBQXBDLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxxQkFBcUI7c0JBQTlCLE1BQU07Z0JBRVAsd0JBQXdCO3NCQUR2QixZQUFZO3VCQUFDLDBCQUEwQjtnQkFPeEMsNEJBQTRCO3NCQUQzQixZQUFZO3VCQUFDLDhCQUE4QjtnQkFXVixTQUFTO3NCQUExQyxZQUFZO3VCQUFDLGtCQUFrQjtnQkFDeUIsbUJBQW1CO3NCQUEzRSxlQUFlO3VCQUFDLGVBQWUsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBRW5CLHFCQUFxQjtzQkFBeEQsU0FBUzt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJy4uL3BhZ2UtaGVhZGVyL3BhZ2UtaGVhZGVyLmNvbXBvbmVudCdcbmltcG9ydCB7IEZvcm1Db250cm9sTmFtZSwgRm9ybUdyb3VwLCBGb3JtR3JvdXBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QsIGRlYm91bmNlVGltZSwgbWFwLCBvZiwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGdldExvY2F0aW9uIH0gZnJvbSAnQG9uZWN4L2FjY2VsZXJhdG9yJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaEhlYWRlckNvbXBvbmVudFN0YXRlIHtcbiAgYWN0aXZlVmlld01vZGU/OiAnYmFzaWMnIHwgJ2FkdmFuY2VkJ1xuICBzZWxlY3RlZFNlYXJjaENvbmZpZz86IHN0cmluZyB8IG51bGxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hDb25maWdEYXRhIHtcbiAgbmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIGZpZWxkVmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9XG4gIGRpc3BsYXllZENvbHVtbnNJZHM6IHN0cmluZ1tdXG4gIHZpZXdNb2RlOiAnYmFzaWMnIHwgJ2FkdmFuY2VkJ1xufVxuXG4vKipcbiAqIFRvIHRyaWdnZXIgdGhlIHNlYXJjaCB3aGVuIEVudGVyIGtleSBpcyBwcmVzc2VkIGluc2lkZSBhIHNlYXJjaCBwYXJhbWV0ZXIgZmllbGQsXG4gKiBhbiBFdmVudExpc3RlbmVyIGZvciBrZXl1cCBlbnRlciBldmVudCBpcyBhZGRlZCBmb3IgSFRNTCBlbGVtZW50cyB3aGljaCBoYXZlIGFuIGlucHV0LlxuICogUGxlYXNlIGFkZCB0aGUgRXZlbnRMaXN0ZW5lciB5b3Vyc2VsZiBtYW51YWxseSwgaWYgeW91IHdhbnQgdG8gaGF2ZSB0aGF0IGZ1bmN0aW9uYWxpdHkgZm9yIHNvbWUgb3RoZXIgZWxlbWVudHNcbiAqIHdoaWNoIGRvIG5vdCBoYXZlIGFuIGlucHV0IGVsZW1lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29jeC1zZWFyY2gtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgaGVhZGVyID0gJydcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgV2lsbCBiZSByZXBsYWNlZCBieSBoZWFkZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBoZWFkbGluZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmhlYWRlclxuICB9XG4gIHNldCBoZWFkbGluZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5oZWFkZXIgPSB2YWx1ZVxuICB9XG4gIEBJbnB1dCgpIHN1YmhlYWRlcjogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIF92aWV3TW9kZTogJ2Jhc2ljJyB8ICdhZHZhbmNlZCcgPSAnYmFzaWMnXG4gIEBJbnB1dCgpXG4gIGdldCB2aWV3TW9kZSgpOiAnYmFzaWMnIHwgJ2FkdmFuY2VkJyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXdNb2RlXG4gIH1cbiAgc2V0IHZpZXdNb2RlKHZpZXdNb2RlOiAnYmFzaWMnIHwgJ2FkdmFuY2VkJykge1xuICAgIGlmICh0aGlzLnZpZXdNb2RlICE9PSB2aWV3TW9kZSkge1xuICAgICAgdGhpcy5fdmlld01vZGUgPSB2aWV3TW9kZVxuICAgICAgdGhpcy52aWV3TW9kZUNoYW5nZWQ/LmVtaXQodGhpcy52aWV3TW9kZSlcbiAgICAgIHRoaXMuY29tcG9uZW50U3RhdGVDaGFuZ2VkLmVtaXQoe1xuICAgICAgICBhY3RpdmVWaWV3TW9kZTogdGhpcy52aWV3TW9kZSxcbiAgICAgIH0pXG4gICAgICB0aGlzLnVwZGF0ZUhlYWRlckFjdGlvbnMoKVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmFkZEtleVVwRXZlbnRMaXN0ZW5lcigpKVxuICAgIH1cbiAgfVxuICBASW5wdXQoKSBtYW51YWxCcmVhZGNydW1icyA9IGZhbHNlXG4gIF9hY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG4gIEBJbnB1dCgpXG4gIGdldCBhY3Rpb25zKCkge1xuICAgIHJldHVybiB0aGlzLl9hY3Rpb25zXG4gIH1cbiAgc2V0IGFjdGlvbnModmFsdWUpIHtcbiAgICB0aGlzLl9hY3Rpb25zID0gdmFsdWVcbiAgICB0aGlzLnVwZGF0ZUhlYWRlckFjdGlvbnMoKVxuICB9XG4gIEBJbnB1dCgpIHNlYXJjaENvbmZpZ1Blcm1pc3Npb246IHN0cmluZyB8IHVuZGVmaW5lZFxuICBASW5wdXQoKSBzZWFyY2hCdXR0b25EaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIHJlc2V0QnV0dG9uRGlzYWJsZWQgPSBmYWxzZVxuICBASW5wdXQoKSBwYWdlTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gZ2V0TG9jYXRpb24oKS5hcHBsaWNhdGlvblBhdGhcblxuICBAT3V0cHV0KCkgc2VhcmNoZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSByZXNldHRlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHNlbGVjdGVkU2VhcmNoQ29uZmlnQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFNlYXJjaENvbmZpZ0RhdGEgfCB1bmRlZmluZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSB2aWV3TW9kZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjwnYmFzaWMnIHwgJ2FkdmFuY2VkJz4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGNvbXBvbmVudFN0YXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFNlYXJjaEhlYWRlckNvbXBvbmVudFN0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWRcblxuICBnZXQgX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudCgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcbiAgfVxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0JylcbiAgYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIGdldCBfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdCgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0XG4gIH1cblxuICBnZXQgc2VhcmNoQ29uZmlnQ2hhbmdlT2JzZXJ2ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkLm9ic2VydmVkXG4gIH1cblxuICBAQ29udGVudENoaWxkKEZvcm1Hcm91cERpcmVjdGl2ZSkgZm9ybUdyb3VwOiBGb3JtR3JvdXAgfCB1bmRlZmluZWRcbiAgQENvbnRlbnRDaGlsZHJlbihGb3JtQ29udHJvbE5hbWUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgdmlzaWJsZUZvcm1Db250cm9scyE6IFF1ZXJ5TGlzdDxGb3JtQ29udHJvbE5hbWU+XG5cbiAgQFZpZXdDaGlsZCgnc2VhcmNoUGFyYW1ldGVyRmllbGRzJykgc2VhcmNoUGFyYW1ldGVyRmllbGRzOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkXG5cbiAgaGFzQWR2YW5jZWQgPSBmYWxzZVxuXG4gIHNpbXBsZUFkdmFuY2VkQWN0aW9uOiBBY3Rpb24gPSB7XG4gICAgaWQ6ICdzaW1wbGVBZHZhbmNlZEJ1dHRvbicsXG4gICAgYWN0aW9uQ2FsbGJhY2s6ICgpID0+IHRoaXMudG9nZ2xlVmlld01vZGUoKSxcbiAgICBzaG93OiAnYWx3YXlzJyxcbiAgfVxuICBoZWFkZXJBY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG5cbiAgZmllbGRWYWx1ZXMkOiBPYnNlcnZhYmxlPHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9PiB8IHVuZGVmaW5lZCA9IG9mKHt9KVxuICBzZWFyY2hDb25maWdDaGFuZ2VkU2xvdEVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxTZWFyY2hDb25maWdEYXRhIHwgdW5kZWZpbmVkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc2VhcmNoQ29uZmlnQ2hhbmdlZFNsb3RFbWl0dGVyLnN1YnNjcmliZSgoY29uZmlnKSA9PiB7XG4gICAgICB0aGlzLmNvbXBvbmVudFN0YXRlQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgc2VsZWN0ZWRTZWFyY2hDb25maWc6IGNvbmZpZz8ubmFtZSA/PyBudWxsLFxuICAgICAgfSlcbiAgICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkLmVtaXQoY29uZmlnKVxuICAgIH0pXG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwKSB7XG4gICAgICB0aGlzLmZpZWxkVmFsdWVzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoe30pKSxcbiAgICAgICAgdGhpcy52aXNpYmxlRm9ybUNvbnRyb2xzLmNoYW5nZXMucGlwZShzdGFydFdpdGgobnVsbCkpLFxuICAgICAgXSkucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgIG1hcCgoW3ZhbHVlcywgX10pID0+XG4gICAgICAgICAgT2JqZWN0LmVudHJpZXModmFsdWVzID8/IHt9KS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgW2tleV06IHRoaXMuaXNWaXNpYmxlKGtleSkgPyB2YWx1ZSB8fCB1bmRlZmluZWQgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkS2V5VXBFdmVudExpc3RlbmVyKClcbiAgfVxuXG4gIHRvZ2dsZVZpZXdNb2RlKCkge1xuICAgIHRoaXMudmlld01vZGUgPSB0aGlzLnZpZXdNb2RlID09PSAnYmFzaWMnID8gJ2FkdmFuY2VkJyA6ICdiYXNpYydcbiAgfVxuXG4gIG9uUmVzZXRDbGlja2VkKCkge1xuICAgIHRoaXMucmVzZXR0ZWQuZW1pdCgpXG4gIH1cblxuICBvblNlYXJjaENsaWNrZWQoKSB7XG4gICAgdGhpcy5zZWFyY2hlZC5lbWl0KClcbiAgfVxuXG4gIHVwZGF0ZUhlYWRlckFjdGlvbnMoKSB7XG4gICAgY29uc3QgaGVhZGVyQWN0aW9uczogQWN0aW9uW10gPSBbXVxuICAgIGlmICh0aGlzLmhhc0FkdmFuY2VkKSB7XG4gICAgICB0aGlzLnNpbXBsZUFkdmFuY2VkQWN0aW9uLmxhYmVsS2V5ID0gdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJ1xuICAgICAgPyAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5BRFZBTkNFRC5URVhUJ1xuICAgICAgOiAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5TSU1QTEUuVEVYVCcsXG4gICAgICB0aGlzLnNpbXBsZUFkdmFuY2VkQWN0aW9uLnRpdGxlS2V5ID0gdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJ1xuICAgICAgPyAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5BRFZBTkNFRC5ERVRBSUwnXG4gICAgICA6ICdPQ1hfU0VBUkNIX0hFQURFUi5UT0dHTEVfQlVUVE9OLlNJTVBMRS5ERVRBSUwnLFxuICAgICAgXG4gICAgICBoZWFkZXJBY3Rpb25zLnB1c2godGhpcy5zaW1wbGVBZHZhbmNlZEFjdGlvbilcbiAgICB9XG4gICAgdGhpcy5oZWFkZXJBY3Rpb25zID0gaGVhZGVyQWN0aW9ucy5jb25jYXQodGhpcy5hY3Rpb25zKVxuICB9XG5cbiAgYWRkS2V5VXBFdmVudExpc3RlbmVyKCkge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudHMgPSB0aGlzLnNlYXJjaFBhcmFtZXRlckZpZWxkcz8ubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dCcpXG4gICAgaW5wdXRFbGVtZW50cy5mb3JFYWNoKChpbnB1dEVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgaWYgKCFpbnB1dEVsZW1lbnQubGlzdGVuZXJBZGRlZCkge1xuICAgICAgICBpbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCAoZXZlbnQ6IGFueSkgPT4gdGhpcy5vblNlYXJjaEtleXVwKGV2ZW50KSlcbiAgICAgICAgaW5wdXRFbGVtZW50Lmxpc3RlbmVyQWRkZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG9uU2VhcmNoS2V5dXAoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC5jb2RlID09PSAnRW50ZXInKSB7XG4gICAgICB0aGlzLm9uU2VhcmNoQ2xpY2tlZCgpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1Zpc2libGUoY29udHJvbDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZUZvcm1Db250cm9scy5zb21lKFxuICAgICAgKGZvcm1Db250cm9sKSA9PiBmb3JtQ29udHJvbC5uYW1lICE9PSBudWxsICYmIFN0cmluZyhmb3JtQ29udHJvbC5uYW1lKSA9PT0gY29udHJvbFxuICAgIClcbiAgfVxufVxuIiwiPG9jeC1wYWdlLWhlYWRlclxuICBbaGVhZGVyXT1cImhlYWRlciB8fCAoJ09DWF9TRUFSQ0hfSEVBREVSLkhFQURFUicgfCB0cmFuc2xhdGUpXCJcbiAgW3N1YmhlYWRlcl09XCJzdWJoZWFkZXJcIlxuICBbbWFudWFsQnJlYWRjcnVtYnNdPVwibWFudWFsQnJlYWRjcnVtYnNcIlxuICBbYWN0aW9uc109XCJoZWFkZXJBY3Rpb25zXCJcbj5cbiAgPG5nLXRlbXBsYXRlICNhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWFyY2hDb25maWdDaGFuZ2VPYnNlcnZlZCAmJiBwYWdlTmFtZVwiPlxuICAgICAgPG9jeC1zbG90XG4gICAgICAgICpvY3hJZlBlcm1pc3Npb249XCJzZWFyY2hDb25maWdQZXJtaXNzaW9uXCJcbiAgICAgICAgbmFtZT1cIm9uZWN4LXNlYXJjaC1jb25maWdcIlxuICAgICAgICBbaW5wdXRzXT1cInsgcGFnZU5hbWU6IHBhZ2VOYW1lLCBjdXJyZW50RmllbGRWYWx1ZXM6IGZpZWxkVmFsdWVzJCB8IGFzeW5jLCB2aWV3TW9kZTogdmlld01vZGUgfVwiXG4gICAgICAgIFtvdXRwdXRzXT1cInsgc2VhcmNoQ29uZmlnU2VsZWN0ZWQ6IHNlYXJjaENvbmZpZ0NoYW5nZWRTbG90RW1pdHRlciB9XCJcbiAgICAgID5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCIxOHJlbVwiIGhlaWdodD1cIjNyZW1cIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L29jeC1zbG90PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlICNhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IHJvdy1nYXAtMyBjb2x1bW4tZ2FwLTYgZmxleC13cmFwIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDxkaXY+XG4gICAgICA8ZGl2ICNzZWFyY2hQYXJhbWV0ZXJGaWVsZHM+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBnYXAtMlwiPlxuICAgICAgPHAtYnV0dG9uXG4gICAgICAgIGlkPVwicmVzZXRCdXR0b25cIlxuICAgICAgICAqbmdJZj1cInJlc2V0dGVkLm9ic2VydmVkXCJcbiAgICAgICAgKG9uQ2xpY2spPVwib25SZXNldENsaWNrZWQoKVwiXG4gICAgICAgIGxhYmVsPVwie3sgJ09DWF9TRUFSQ0hfSEVBREVSLlJFU0VUX0JVVFRPTi5URVhUJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGljb249XCJwaSBwaS1lcmFzZXJcIlxuICAgICAgICBwVG9vbHRpcD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5SRVNFVF9CVVRUT04uREVUQUlMJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXG4gICAgICAgIHRvb2x0aXBFdmVudD1cImhvdmVyXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInJlc2V0QnV0dG9uRGlzYWJsZWRcIlxuICAgICAgICBbYXJpYUxhYmVsXT1cIidPQ1hfU0VBUkNIX0hFQURFUi5SRVNFVF9CVVRUT04uQVJJQV9MQUJFTCcgfCB0cmFuc2xhdGVcIlxuICAgICAgPlxuICAgICAgPC9wLWJ1dHRvbj5cblxuICAgICAgPHAtYnV0dG9uXG4gICAgICAgIGlkPVwic2VhcmNoQnV0dG9uXCJcbiAgICAgICAgKG9uQ2xpY2spPVwib25TZWFyY2hDbGlja2VkKClcIlxuICAgICAgICBsYWJlbD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLlRFWFQnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgaWNvbj1cInBpIHBpLXNlYXJjaFwiXG4gICAgICAgIHBUb29sdGlwPVwie3sgJ09DWF9TRUFSQ0hfSEVBREVSLlNFQVJDSF9CVVRUT04uREVUQUlMJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXG4gICAgICAgIHRvb2x0aXBFdmVudD1cImhvdmVyXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInNlYXJjaEJ1dHRvbkRpc2FibGVkIHx8IGZvcm1Hcm91cD8uaW52YWxpZFwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiJ09DWF9TRUFSQ0hfSEVBREVSLlNFQVJDSF9CVVRUT04uQVJJQV9MQUJFTCcgfCB0cmFuc2xhdGVcIlxuICAgICAgPlxuICAgICAgPC9wLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L29jeC1wYWdlLWhlYWRlcj5cbiJdfQ==
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUVULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQUUsZUFBZSxFQUFhLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDL0UsT0FBTyxFQUFjLGFBQWEsRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTs7Ozs7Ozs7Ozs7QUFjdkY7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8scUJBQXFCO0lBR2hDOztPQUVHO0lBQ0gsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ3BCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFBO0lBQ3JCLENBQUM7SUFHRCxJQUNJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUE7SUFDdkIs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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnLi4vcGFnZS1oZWFkZXIvcGFnZS1oZWFkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xOYW1lLCBGb3JtR3JvdXAsIEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgZGVib3VuY2VUaW1lLCBtYXAsIG9mLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZ2V0TG9jYXRpb24gfSBmcm9tICdAb25lY3gvYWNjZWxlcmF0b3InXG5pbXBvcnQgeyBDT05GSUdfS0VZLCBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hIZWFkZXJDb21wb25lbnRTdGF0ZSB7XG4gIGFjdGl2ZVZpZXdNb2RlPzogJ2Jhc2ljJyB8ICdhZHZhbmNlZCdcbiAgc2VsZWN0ZWRTZWFyY2hDb25maWc/OiBzdHJpbmcgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoQ29uZmlnRGF0YSB7XG4gIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBmaWVsZFZhbHVlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuICBkaXNwbGF5ZWRDb2x1bW5zSWRzOiBzdHJpbmdbXVxuICB2aWV3TW9kZTogJ2Jhc2ljJyB8ICdhZHZhbmNlZCdcbn1cblxuLyoqXG4gKiBUbyB0cmlnZ2VyIHRoZSBzZWFyY2ggd2hlbiBFbnRlciBrZXkgaXMgcHJlc3NlZCBpbnNpZGUgYSBzZWFyY2ggcGFyYW1ldGVyIGZpZWxkLFxuICogYW4gRXZlbnRMaXN0ZW5lciBmb3Iga2V5dXAgZW50ZXIgZXZlbnQgaXMgYWRkZWQgZm9yIEhUTUwgZWxlbWVudHMgd2hpY2ggaGF2ZSBhbiBpbnB1dC5cbiAqIFBsZWFzZSBhZGQgdGhlIEV2ZW50TGlzdGVuZXIgeW91cnNlbGYgbWFudWFsbHksIGlmIHlvdSB3YW50IHRvIGhhdmUgdGhhdCBmdW5jdGlvbmFsaXR5IGZvciBzb21lIG90aGVyIGVsZW1lbnRzXG4gKiB3aGljaCBkbyBub3QgaGF2ZSBhbiBpbnB1dCBlbGVtZW50LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvY3gtc2VhcmNoLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGhlYWRlciA9ICcnXG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFdpbGwgYmUgcmVwbGFjZWQgYnkgaGVhZGVyXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgaGVhZGxpbmUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5oZWFkZXJcbiAgfVxuICBzZXQgaGVhZGxpbmUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuaGVhZGVyID0gdmFsdWVcbiAgfVxuICBASW5wdXQoKSBzdWJoZWFkZXI6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBfdmlld01vZGU6ICdiYXNpYycgfCAnYWR2YW5jZWQnID0gJ2Jhc2ljJ1xuICBASW5wdXQoKVxuICBnZXQgdmlld01vZGUoKTogJ2Jhc2ljJyB8ICdhZHZhbmNlZCcge1xuICAgIHJldHVybiB0aGlzLl92aWV3TW9kZVxuICB9XG4gIHNldCB2aWV3TW9kZSh2aWV3TW9kZTogJ2Jhc2ljJyB8ICdhZHZhbmNlZCcpIHtcbiAgICBpZiAodGhpcy52aWV3TW9kZSAhPT0gdmlld01vZGUpIHtcbiAgICAgIHRoaXMuX3ZpZXdNb2RlID0gdmlld01vZGVcbiAgICAgIHRoaXMudmlld01vZGVDaGFuZ2VkPy5lbWl0KHRoaXMudmlld01vZGUpXG4gICAgICB0aGlzLmNvbXBvbmVudFN0YXRlQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgYWN0aXZlVmlld01vZGU6IHRoaXMudmlld01vZGUsXG4gICAgICB9KVxuICAgICAgdGhpcy51cGRhdGVIZWFkZXJBY3Rpb25zKClcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hZGRLZXlVcEV2ZW50TGlzdGVuZXIoKSlcbiAgICB9XG4gIH1cbiAgQElucHV0KCkgbWFudWFsQnJlYWRjcnVtYnMgPSBmYWxzZVxuICBfYWN0aW9uczogQWN0aW9uW10gPSBbXVxuICBASW5wdXQoKVxuICBnZXQgYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1xuICB9XG4gIHNldCBhY3Rpb25zKHZhbHVlKSB7XG4gICAgdGhpcy5fYWN0aW9ucyA9IHZhbHVlXG4gICAgdGhpcy51cGRhdGVIZWFkZXJBY3Rpb25zKClcbiAgfVxuICBASW5wdXQoKSBzZWFyY2hDb25maWdQZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZFxuICBASW5wdXQoKSBzZWFyY2hCdXR0b25EaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIHJlc2V0QnV0dG9uRGlzYWJsZWQgPSBmYWxzZVxuICBASW5wdXQoKSBwYWdlTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gZ2V0TG9jYXRpb24oKS5hcHBsaWNhdGlvblBhdGhcblxuICBAT3V0cHV0KCkgc2VhcmNoZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSByZXNldHRlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHNlbGVjdGVkU2VhcmNoQ29uZmlnQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFNlYXJjaENvbmZpZ0RhdGEgfCB1bmRlZmluZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBPdXRwdXQoKSB2aWV3TW9kZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjwnYmFzaWMnIHwgJ2FkdmFuY2VkJz4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIGNvbXBvbmVudFN0YXRlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPFNlYXJjaEhlYWRlckNvbXBvbmVudFN0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWRcblxuICBnZXQgX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudCgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcbiAgfVxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0JylcbiAgYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIGdldCBfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdCgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0XG4gIH1cblxuICBnZXQgc2VhcmNoQ29uZmlnQ2hhbmdlT2JzZXJ2ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkLm9ic2VydmVkXG4gIH1cblxuICBAQ29udGVudENoaWxkKEZvcm1Hcm91cERpcmVjdGl2ZSkgZm9ybUdyb3VwOiBGb3JtR3JvdXAgfCB1bmRlZmluZWRcbiAgQENvbnRlbnRDaGlsZHJlbihGb3JtQ29udHJvbE5hbWUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgdmlzaWJsZUZvcm1Db250cm9scyE6IFF1ZXJ5TGlzdDxGb3JtQ29udHJvbE5hbWU+XG5cbiAgQFZpZXdDaGlsZCgnc2VhcmNoUGFyYW1ldGVyRmllbGRzJykgc2VhcmNoUGFyYW1ldGVyRmllbGRzOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkXG5cbiAgaGFzQWR2YW5jZWQgPSBmYWxzZVxuXG4gIHNpbXBsZUFkdmFuY2VkQWN0aW9uOiBBY3Rpb24gPSB7XG4gICAgaWQ6ICdzaW1wbGVBZHZhbmNlZEJ1dHRvbicsXG4gICAgYWN0aW9uQ2FsbGJhY2s6ICgpID0+IHRoaXMudG9nZ2xlVmlld01vZGUoKSxcbiAgICBzaG93OiAnYWx3YXlzJyxcbiAgfVxuICBoZWFkZXJBY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG4gIHNlYXJjaEJ1dHRvbnNSZXZlcnNlZCA9IGZhbHNlXG4gIGZpZWxkVmFsdWVzJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IHVua25vd24gfT4gfCB1bmRlZmluZWQgPSBvZih7fSlcbiAgc2VhcmNoQ29uZmlnQ2hhbmdlZFNsb3RFbWl0dGVyOiBFdmVudEVtaXR0ZXI8U2VhcmNoQ29uZmlnRGF0YSB8IHVuZGVmaW5lZD4gPSBuZXcgRXZlbnRFbWl0dGVyKClcblxuICBjb25zdHJ1Y3Rvcihjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UpIHtcbiAgICB0aGlzLnNlYXJjaENvbmZpZ0NoYW5nZWRTbG90RW1pdHRlci5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xuICAgICAgdGhpcy5jb21wb25lbnRTdGF0ZUNoYW5nZWQuZW1pdCh7XG4gICAgICAgIHNlbGVjdGVkU2VhcmNoQ29uZmlnOiBjb25maWc/Lm5hbWUgPz8gbnVsbCxcbiAgICAgIH0pXG4gICAgICB0aGlzLnNlbGVjdGVkU2VhcmNoQ29uZmlnQ2hhbmdlZC5lbWl0KGNvbmZpZylcbiAgICB9KVxuICAgIHRoaXMuc2VhcmNoQnV0dG9uc1JldmVyc2VkID1cbiAgICAgIGNvbmZpZ3VyYXRpb25TZXJ2aWNlLmdldFByb3BlcnR5KENPTkZJR19LRVkuT05FQ1hfUE9SVEFMX1NFQVJDSF9CVVRUT05TX1JFVkVSU0VEKSA9PT0gJ3RydWUnXG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwKSB7XG4gICAgICB0aGlzLmZpZWxkVmFsdWVzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoe30pKSxcbiAgICAgICAgdGhpcy52aXNpYmxlRm9ybUNvbnRyb2xzLmNoYW5nZXMucGlwZShzdGFydFdpdGgobnVsbCkpLFxuICAgICAgXSkucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgIG1hcCgoW3ZhbHVlcywgX10pID0+XG4gICAgICAgICAgT2JqZWN0LmVudHJpZXModmFsdWVzID8/IHt9KS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgW2tleV06IHRoaXMuaXNWaXNpYmxlKGtleSkgPyB2YWx1ZSB8fCB1bmRlZmluZWQgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkS2V5VXBFdmVudExpc3RlbmVyKClcbiAgfVxuXG4gIHRvZ2dsZVZpZXdNb2RlKCkge1xuICAgIHRoaXMudmlld01vZGUgPSB0aGlzLnZpZXdNb2RlID09PSAnYmFzaWMnID8gJ2FkdmFuY2VkJyA6ICdiYXNpYydcbiAgfVxuXG4gIG9uUmVzZXRDbGlja2VkKCkge1xuICAgIHRoaXMucmVzZXR0ZWQuZW1pdCgpXG4gIH1cblxuICBvblNlYXJjaENsaWNrZWQoKSB7XG4gICAgdGhpcy5zZWFyY2hlZC5lbWl0KClcbiAgfVxuXG4gIHVwZGF0ZUhlYWRlckFjdGlvbnMoKSB7XG4gICAgY29uc3QgaGVhZGVyQWN0aW9uczogQWN0aW9uW10gPSBbXVxuICAgIGlmICh0aGlzLmhhc0FkdmFuY2VkKSB7XG4gICAgICB0aGlzLnNpbXBsZUFkdmFuY2VkQWN0aW9uLmxhYmVsS2V5ID0gdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJ1xuICAgICAgPyAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5BRFZBTkNFRC5URVhUJ1xuICAgICAgOiAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5TSU1QTEUuVEVYVCcsXG4gICAgICB0aGlzLnNpbXBsZUFkdmFuY2VkQWN0aW9uLnRpdGxlS2V5ID0gdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJ1xuICAgICAgPyAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5BRFZBTkNFRC5ERVRBSUwnXG4gICAgICA6ICdPQ1hfU0VBUkNIX0hFQURFUi5UT0dHTEVfQlVUVE9OLlNJTVBMRS5ERVRBSUwnLFxuICAgICAgXG4gICAgICBoZWFkZXJBY3Rpb25zLnB1c2godGhpcy5zaW1wbGVBZHZhbmNlZEFjdGlvbilcbiAgICB9XG4gICAgdGhpcy5oZWFkZXJBY3Rpb25zID0gaGVhZGVyQWN0aW9ucy5jb25jYXQodGhpcy5hY3Rpb25zKVxuICB9XG5cbiAgYWRkS2V5VXBFdmVudExpc3RlbmVyKCkge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudHMgPSB0aGlzLnNlYXJjaFBhcmFtZXRlckZpZWxkcz8ubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dCcpXG4gICAgaW5wdXRFbGVtZW50cy5mb3JFYWNoKChpbnB1dEVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgaWYgKCFpbnB1dEVsZW1lbnQubGlzdGVuZXJBZGRlZCkge1xuICAgICAgICBpbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCAoZXZlbnQ6IGFueSkgPT4gdGhpcy5vblNlYXJjaEtleXVwKGV2ZW50KSlcbiAgICAgICAgaW5wdXRFbGVtZW50Lmxpc3RlbmVyQWRkZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG9uU2VhcmNoS2V5dXAoZXZlbnQ6IGFueSkge1xuICAgIGlmIChldmVudC5jb2RlID09PSAnRW50ZXInKSB7XG4gICAgICB0aGlzLm9uU2VhcmNoQ2xpY2tlZCgpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1Zpc2libGUoY29udHJvbDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZUZvcm1Db250cm9scy5zb21lKFxuICAgICAgKGZvcm1Db250cm9sKSA9PiBmb3JtQ29udHJvbC5uYW1lICE9PSBudWxsICYmIFN0cmluZyhmb3JtQ29udHJvbC5uYW1lKSA9PT0gY29udHJvbFxuICAgIClcbiAgfVxufVxuIiwiPG9jeC1wYWdlLWhlYWRlclxuICBbaGVhZGVyXT1cImhlYWRlciB8fCAoJ09DWF9TRUFSQ0hfSEVBREVSLkhFQURFUicgfCB0cmFuc2xhdGUpXCJcbiAgW3N1YmhlYWRlcl09XCJzdWJoZWFkZXJcIlxuICBbbWFudWFsQnJlYWRjcnVtYnNdPVwibWFudWFsQnJlYWRjcnVtYnNcIlxuICBbYWN0aW9uc109XCJoZWFkZXJBY3Rpb25zXCJcbj5cbiAgPG5nLXRlbXBsYXRlICNhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWFyY2hDb25maWdDaGFuZ2VPYnNlcnZlZCAmJiBwYWdlTmFtZVwiPlxuICAgICAgPG9jeC1zbG90XG4gICAgICAgICpvY3hJZlBlcm1pc3Npb249XCJzZWFyY2hDb25maWdQZXJtaXNzaW9uXCJcbiAgICAgICAgbmFtZT1cIm9uZWN4LXNlYXJjaC1jb25maWdcIlxuICAgICAgICBbaW5wdXRzXT1cInsgcGFnZU5hbWU6IHBhZ2VOYW1lLCBjdXJyZW50RmllbGRWYWx1ZXM6IGZpZWxkVmFsdWVzJCB8IGFzeW5jLCB2aWV3TW9kZTogdmlld01vZGUgfVwiXG4gICAgICAgIFtvdXRwdXRzXT1cInsgc2VhcmNoQ29uZmlnU2VsZWN0ZWQ6IHNlYXJjaENvbmZpZ0NoYW5nZWRTbG90RW1pdHRlciB9XCJcbiAgICAgID5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCIxOHJlbVwiIGhlaWdodD1cIjNyZW1cIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L29jeC1zbG90PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlICNhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQ+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IHJvdy1nYXAtMyBjb2x1bW4tZ2FwLTYgZmxleC13cmFwIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgIDxkaXY+XG4gICAgICA8ZGl2ICNzZWFyY2hQYXJhbWV0ZXJGaWVsZHM+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBnYXAtMlwiIFtuZ0NsYXNzXT1cInNlYXJjaEJ1dHRvbnNSZXZlcnNlZCA/ICdmbGV4LXJvdy1yZXZlcnNlJyA6ICdmbGV4LXJvdydcIj5cbiAgICAgIDxwLWJ1dHRvblxuICAgICAgICBpZD1cInJlc2V0QnV0dG9uXCJcbiAgICAgICAgKm5nSWY9XCJyZXNldHRlZC5vYnNlcnZlZFwiXG4gICAgICAgIChvbkNsaWNrKT1cIm9uUmVzZXRDbGlja2VkKClcIlxuICAgICAgICBsYWJlbD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5SRVNFVF9CVVRUT04uVEVYVCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBpY29uPVwicGkgcGktZXJhc2VyXCJcbiAgICAgICAgcFRvb2x0aXA9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuUkVTRVRfQlVUVE9OLkRFVEFJTCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJyZXNldEJ1dHRvbkRpc2FibGVkXCJcbiAgICAgICAgW2FyaWFMYWJlbF09XCInT0NYX1NFQVJDSF9IRUFERVIuUkVTRVRfQlVUVE9OLkFSSUFfTEFCRUwnIHwgdHJhbnNsYXRlXCJcbiAgICAgID5cbiAgICAgIDwvcC1idXR0b24+XG5cbiAgICAgIDxwLWJ1dHRvblxuICAgICAgICBpZD1cInNlYXJjaEJ1dHRvblwiXG4gICAgICAgIChvbkNsaWNrKT1cIm9uU2VhcmNoQ2xpY2tlZCgpXCJcbiAgICAgICAgbGFiZWw9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuU0VBUkNIX0JVVFRPTi5URVhUJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGljb249XCJwaSBwaS1zZWFyY2hcIlxuICAgICAgICBwVG9vbHRpcD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLkRFVEFJTCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJzZWFyY2hCdXR0b25EaXNhYmxlZCB8fCBmb3JtR3JvdXA/LmludmFsaWRcIlxuICAgICAgICBbYXJpYUxhYmVsXT1cIidPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLkFSSUFfTEFCRUwnIHwgdHJhbnNsYXRlXCJcbiAgICAgID5cbiAgICAgIDwvcC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9vY3gtcGFnZS1oZWFkZXI+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9kYXRhLWFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBEYXRhQWN0aW9uIHtcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWxLZXk/OiBzdHJpbmdcbiAgaWNvbj86IHN0cmluZ1xuICBwZXJtaXNzaW9uOiBzdHJpbmdcbiAgY2xhc3Nlcz86IHN0cmluZ1tdXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBhY3Rpb25WaXNpYmxlRmllbGQ/OiBzdHJpbmdcbiAgYWN0aW9uRW5hYmxlZEZpZWxkPzogc3RyaW5nXG4gIHNob3dBc092ZXJmbG93PzogYm9vbGVhblxuICBjYWxsYmFjazogKGRhdGE6IGFueSkgPT4gdm9pZFxufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9tb2RlbC9kYXRhLWFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBEYXRhQWN0aW9uIHtcbiAgaWQ/OiBzdHJpbmdcbiAgbGFiZWxLZXk/OiBzdHJpbmdcbiAgaWNvbj86IHN0cmluZ1xuICBwZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXVxuICBjbGFzc2VzPzogc3RyaW5nW11cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIGFjdGlvblZpc2libGVGaWVsZD86IHN0cmluZ1xuICBhY3Rpb25FbmFibGVkRmllbGQ/OiBzdHJpbmdcbiAgc2hvd0FzT3ZlcmZsb3c/OiBib29sZWFuXG4gIGNhbGxiYWNrOiAoZGF0YTogYW55KSA9PiB2b2lkXG59XG4iXX0=
@@ -6,13 +6,13 @@ function _hasShowTime(calendars, formKey) {
6
6
  }
7
7
  /**
8
8
  * Safely builds the search criteria based on form values
9
- * @param formValues the form values to use
9
+ * @param formRawValue the raw value of the form to use
10
10
  * @param calendars a list of primeng calendars of the form (use `@ViewChildren(Calendar) calendars!: QueryList<Calendar>;`)
11
11
  * @param parameters {@link BuildSearchCriteriaParameters} to use when building the search criteria
12
12
  * @returns the search criteria as a partial of T (T = type of the search criteria)
13
13
  */
14
- export function buildSearchCriteria(formValues, calendars, { removeNullValues = false }) {
15
- return Object.entries(formValues).reduce((acc, [key, value]) => {
14
+ export function buildSearchCriteria(formRawValue, calendars, { removeNullValues = false }) {
15
+ return Object.entries(formRawValue).reduce((acc, [key, value]) => {
16
16
  if (value == null && removeNullValues) {
17
17
  return acc;
18
18
  }
@@ -25,4 +25,4 @@ export function buildSearchCriteria(formValues, calendars, { removeNullValues =
25
25
  };
26
26
  }, {});
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JpdGVyaWEudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi91dGlscy9jcml0ZXJpYS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFXakYsU0FBUyxZQUFZLENBQUMsU0FBOEIsRUFBRSxPQUFlO0lBQ25FLE9BQU8sQ0FDTCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQTtJQUMzQixDQUFDLENBQUMsRUFBRSxRQUFRLEtBQUssSUFBSSxDQUN0QixDQUFBO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsVUFBMEIsRUFDMUIsU0FBOEIsRUFDOUIsRUFBRSxnQkFBZ0IsR0FBRyxLQUFLLEVBQWlDO0lBRTNELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFlLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUN6RSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUN0QyxPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUM7UUFDRCxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxLQUFLLEdBQUcsK0JBQStCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE9BQU87WUFDTCxHQUFHLEdBQUc7WUFDTixDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUs7U0FDYixDQUFBO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ1IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IGdldFVUQ0RhdGVXaXRob3V0VGltZXpvbmVJc3N1ZXMsIGlzVmFsaWREYXRlIH0gZnJvbSAnQG9uZWN4L2FjY2VsZXJhdG9yJ1xuaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tICdwcmltZW5nL2NhbGVuZGFyJ1xuXG5leHBvcnQgdHlwZSBoYXNTaG93VGltZUZ1bmN0aW9uID0gKGtleTogc3RyaW5nKSA9PiBib29sZWFuXG4vKipcbiAqIHJlbW92ZU51bGxWYWx1ZXM6IHdoZXRoZXIgdG8gcmVtb3ZlIGVudHJpZXMgZnJvbSB0aGUgc2VhcmNoIGNyaXRlcmlhIHdoZXJlIHRoZSB2YWx1ZSBpcyBudWxsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRTZWFyY2hDcml0ZXJpYVBhcmFtZXRlcnMge1xuICByZW1vdmVOdWxsVmFsdWVzOiBib29sZWFuXG59XG5cbmZ1bmN0aW9uIF9oYXNTaG93VGltZShjYWxlbmRhcnM6IFF1ZXJ5TGlzdDxDYWxlbmRhcj4sIGZvcm1LZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gKFxuICAgIGNhbGVuZGFycy5maW5kKChjKSA9PiB7XG4gICAgICByZXR1cm4gYy5uYW1lID09PSBmb3JtS2V5XG4gICAgfSk/LnNob3dUaW1lID09PSB0cnVlXG4gIClcbn1cblxuLyoqXG4gKiBTYWZlbHkgYnVpbGRzIHRoZSBzZWFyY2ggY3JpdGVyaWEgYmFzZWQgb24gZm9ybSB2YWx1ZXNcbiAqIEBwYXJhbSBmb3JtVmFsdWVzIHRoZSBmb3JtIHZhbHVlcyB0byB1c2VcbiAqIEBwYXJhbSBjYWxlbmRhcnMgYSBsaXN0IG9mIHByaW1lbmcgY2FsZW5kYXJzIG9mIHRoZSBmb3JtICh1c2UgYEBWaWV3Q2hpbGRyZW4oQ2FsZW5kYXIpIGNhbGVuZGFycyE6IFF1ZXJ5TGlzdDxDYWxlbmRhcj47YClcbiAqIEBwYXJhbSBwYXJhbWV0ZXJzIHtAbGluayBCdWlsZFNlYXJjaENyaXRlcmlhUGFyYW1ldGVyc30gIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIHRoZSBzZWFyY2ggY3JpdGVyaWFcbiAqIEByZXR1cm5zIHRoZSBzZWFyY2ggY3JpdGVyaWEgYXMgYSBwYXJ0aWFsIG9mIFQgKFQgPSB0eXBlIG9mIHRoZSBzZWFyY2ggY3JpdGVyaWEpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFNlYXJjaENyaXRlcmlhPFQ+KFxuICBmb3JtVmFsdWVzOiBGb3JtR3JvdXA8YW55PixcbiAgY2FsZW5kYXJzOiBRdWVyeUxpc3Q8Q2FsZW5kYXI+LFxuICB7IHJlbW92ZU51bGxWYWx1ZXMgPSBmYWxzZSB9OiBCdWlsZFNlYXJjaENyaXRlcmlhUGFyYW1ldGVyc1xuKSB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyhmb3JtVmFsdWVzKS5yZWR1Y2UoKGFjYzogUGFydGlhbDxUPiwgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKHZhbHVlID09IG51bGwgJiYgcmVtb3ZlTnVsbFZhbHVlcykge1xuICAgICAgcmV0dXJuIGFjY1xuICAgIH1cbiAgICBpZiAoaXNWYWxpZERhdGUodmFsdWUpICYmICFfaGFzU2hvd1RpbWUoY2FsZW5kYXJzLCBrZXkpKSB7XG4gICAgICB2YWx1ZSA9IGdldFVUQ0RhdGVXaXRob3V0VGltZXpvbmVJc3N1ZXModmFsdWUpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWNjLFxuICAgICAgW2tleV06IHZhbHVlLFxuICAgIH1cbiAgfSwge30pXG59XG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JpdGVyaWEudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi91dGlscy9jcml0ZXJpYS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFXakYsU0FBUyxZQUFZLENBQUMsU0FBOEIsRUFBRSxPQUFlO0lBQ25FLE9BQU8sQ0FDTCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQTtJQUMzQixDQUFDLENBQUMsRUFBRSxRQUFRLEtBQUssSUFBSSxDQUN0QixDQUFBO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsWUFBaUIsRUFDakIsU0FBOEIsRUFDOUIsRUFBRSxnQkFBZ0IsR0FBRyxLQUFLLEVBQWlDO0lBRTNELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFlLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUMzRSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUN0QyxPQUFPLEdBQUcsQ0FBQTtRQUNaLENBQUM7UUFDRCxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxLQUFLLEdBQUcsK0JBQStCLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEQsQ0FBQztRQUNELE9BQU87WUFDTCxHQUFHLEdBQUc7WUFDTixDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUs7U0FDYixDQUFBO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ1IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBnZXRVVENEYXRlV2l0aG91dFRpbWV6b25lSXNzdWVzLCBpc1ZhbGlkRGF0ZSB9IGZyb20gJ0BvbmVjeC9hY2NlbGVyYXRvcidcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcidcblxuZXhwb3J0IHR5cGUgaGFzU2hvd1RpbWVGdW5jdGlvbiA9IChrZXk6IHN0cmluZykgPT4gYm9vbGVhblxuLyoqXG4gKiByZW1vdmVOdWxsVmFsdWVzOiB3aGV0aGVyIHRvIHJlbW92ZSBlbnRyaWVzIGZyb20gdGhlIHNlYXJjaCBjcml0ZXJpYSB3aGVyZSB0aGUgdmFsdWUgaXMgbnVsbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkU2VhcmNoQ3JpdGVyaWFQYXJhbWV0ZXJzIHtcbiAgcmVtb3ZlTnVsbFZhbHVlczogYm9vbGVhblxufVxuXG5mdW5jdGlvbiBfaGFzU2hvd1RpbWUoY2FsZW5kYXJzOiBRdWVyeUxpc3Q8Q2FsZW5kYXI+LCBmb3JtS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIChcbiAgICBjYWxlbmRhcnMuZmluZCgoYykgPT4ge1xuICAgICAgcmV0dXJuIGMubmFtZSA9PT0gZm9ybUtleVxuICAgIH0pPy5zaG93VGltZSA9PT0gdHJ1ZVxuICApXG59XG5cbi8qKlxuICogU2FmZWx5IGJ1aWxkcyB0aGUgc2VhcmNoIGNyaXRlcmlhIGJhc2VkIG9uIGZvcm0gdmFsdWVzXG4gKiBAcGFyYW0gZm9ybVJhd1ZhbHVlIHRoZSByYXcgdmFsdWUgb2YgdGhlIGZvcm0gdG8gdXNlXG4gKiBAcGFyYW0gY2FsZW5kYXJzIGEgbGlzdCBvZiBwcmltZW5nIGNhbGVuZGFycyBvZiB0aGUgZm9ybSAodXNlIGBAVmlld0NoaWxkcmVuKENhbGVuZGFyKSBjYWxlbmRhcnMhOiBRdWVyeUxpc3Q8Q2FsZW5kYXI+O2ApXG4gKiBAcGFyYW0gcGFyYW1ldGVycyB7QGxpbmsgQnVpbGRTZWFyY2hDcml0ZXJpYVBhcmFtZXRlcnN9ICB0byB1c2Ugd2hlbiBidWlsZGluZyB0aGUgc2VhcmNoIGNyaXRlcmlhXG4gKiBAcmV0dXJucyB0aGUgc2VhcmNoIGNyaXRlcmlhIGFzIGEgcGFydGlhbCBvZiBUIChUID0gdHlwZSBvZiB0aGUgc2VhcmNoIGNyaXRlcmlhKVxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRTZWFyY2hDcml0ZXJpYTxUPihcbiAgZm9ybVJhd1ZhbHVlOiBhbnksXG4gIGNhbGVuZGFyczogUXVlcnlMaXN0PENhbGVuZGFyPixcbiAgeyByZW1vdmVOdWxsVmFsdWVzID0gZmFsc2UgfTogQnVpbGRTZWFyY2hDcml0ZXJpYVBhcmFtZXRlcnNcbikge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoZm9ybVJhd1ZhbHVlKS5yZWR1Y2UoKGFjYzogUGFydGlhbDxUPiwgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKHZhbHVlID09IG51bGwgJiYgcmVtb3ZlTnVsbFZhbHVlcykge1xuICAgICAgcmV0dXJuIGFjY1xuICAgIH1cbiAgICBpZiAoaXNWYWxpZERhdGUodmFsdWUpICYmICFfaGFzU2hvd1RpbWUoY2FsZW5kYXJzLCBrZXkpKSB7XG4gICAgICB2YWx1ZSA9IGdldFVUQ0RhdGVXaXRob3V0VGltZXpvbmVJc3N1ZXModmFsdWUpXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAuLi5hY2MsXG4gICAgICBba2V5XTogdmFsdWUsXG4gICAgfVxuICB9LCB7fSlcbn1cbiJdfQ==
@@ -2,15 +2,19 @@ import { ContentContainerComponentHarness, parallel } from '@angular/cdk/testing
2
2
  import { PPaginatorHarness } from '@onecx/angular-testing';
3
3
  import { DefaultGridItemHarness } from './default-grid-item.harness';
4
4
  import { DefaultListItemHarness } from './default-list-item.harness';
5
+ import { waitForDeferredViewsToBeRendered } from '@onecx/angular-testing';
5
6
  export class DataListGridHarness extends ContentContainerComponentHarness {
6
7
  constructor() {
7
8
  super(...arguments);
8
9
  this.getDefaultGridItems = this.locatorForAll(DefaultGridItemHarness);
9
- this.getDefaultListItems = this.locatorForAll(DefaultListItemHarness);
10
10
  this.getPaginator = this.locatorFor(PPaginatorHarness);
11
11
  this.getMenuButton = this.locatorFor(`[name="data-grid-item-menu-button"]`);
12
12
  }
13
13
  static { this.hostSelector = 'ocx-data-list-grid'; }
14
+ async getDefaultListItems() {
15
+ await waitForDeferredViewsToBeRendered(this);
16
+ return await this.locatorForAll(DefaultListItemHarness)();
17
+ }
14
18
  async getActionButtons(actionButtonType) {
15
19
  if (actionButtonType === 'list') {
16
20
  return await this.locatorForAll(`[name="data-list-action-button"]`)();
@@ -44,4 +48,4 @@ export class DataListGridHarness extends ContentContainerComponentHarness {
44
48
  return disabledActionButtonsCount === amount;
45
49
  }
46
50
  }
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWdyaWQuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci90ZXN0aW5nL2RhdGEtbGlzdC1ncmlkLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdDQUFnQyxFQUFlLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXBFLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxnQ0FBZ0M7SUFBekU7O1FBR0Usd0JBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO1FBQ2hFLHdCQUFtQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtRQUNoRSxpQkFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUNqRCxrQkFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMscUNBQXFDLENBQUMsQ0FBQTtJQXNDeEUsQ0FBQzthQTNDUSxpQkFBWSxHQUFHLG9CQUFvQixBQUF2QixDQUF1QjtJQU8xQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWlEO1FBQ3RFLElBQUksZ0JBQWdCLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDaEMsT0FBTyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsa0NBQWtDLENBQUMsRUFBRSxDQUFBO1FBQ3ZFLENBQUM7YUFBTSxJQUFJLGdCQUFnQixLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQzlDLE9BQU8sTUFBTSxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxhQUFhLENBQzFELHNEQUFzRCxDQUN2RCxFQUFFLENBQUE7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sTUFBTSxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxhQUFhLENBQUMsK0NBQStDLENBQUMsRUFBRSxDQUFBO1FBQ2pILENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUFDLFlBQXlCLEVBQUUsUUFBeUI7UUFDL0UsSUFBSSxRQUFRLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDeEIsT0FBTyxNQUFNLFlBQVksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbkQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLE1BQU0sWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNsRCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBaUQsRUFBRSxNQUFjO1FBQzlGLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQTtJQUMxRSxDQUFDO0lBRUQsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLFFBQXlCLEVBQUUsTUFBYztRQUM5RSxJQUFJLDBCQUEwQixHQUFHLENBQUMsQ0FBQTtRQUNsQyxNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUMzRCxNQUFNLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDbEIsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO2dCQUN6RSwwQkFBMEIsRUFBRSxDQUFBO1lBQzlCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0QsT0FBTywwQkFBMEIsS0FBSyxNQUFNLENBQUE7SUFDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDb250YWluZXJDb21wb25lbnRIYXJuZXNzLCBUZXN0RWxlbWVudCwgcGFyYWxsZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcbmltcG9ydCB7IFBQYWdpbmF0b3JIYXJuZXNzIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcbmltcG9ydCB7IERlZmF1bHRHcmlkSXRlbUhhcm5lc3MgfSBmcm9tICcuL2RlZmF1bHQtZ3JpZC1pdGVtLmhhcm5lc3MnXG5pbXBvcnQgeyBEZWZhdWx0TGlzdEl0ZW1IYXJuZXNzIH0gZnJvbSAnLi9kZWZhdWx0LWxpc3QtaXRlbS5oYXJuZXNzJ1xuXG5leHBvcnQgY2xhc3MgRGF0YUxpc3RHcmlkSGFybmVzcyBleHRlbmRzIENvbnRlbnRDb250YWluZXJDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdvY3gtZGF0YS1saXN0LWdyaWQnXG5cbiAgZ2V0RGVmYXVsdEdyaWRJdGVtcyA9IHRoaXMubG9jYXRvckZvckFsbChEZWZhdWx0R3JpZEl0ZW1IYXJuZXNzKVxuICBnZXREZWZhdWx0TGlzdEl0ZW1zID0gdGhpcy5sb2NhdG9yRm9yQWxsKERlZmF1bHRMaXN0SXRlbUhhcm5lc3MpXG4gIGdldFBhZ2luYXRvciA9IHRoaXMubG9jYXRvckZvcihQUGFnaW5hdG9ySGFybmVzcylcbiAgZ2V0TWVudUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcihgW25hbWU9XCJkYXRhLWdyaWQtaXRlbS1tZW51LWJ1dHRvblwiXWApXG5cbiAgYXN5bmMgZ2V0QWN0aW9uQnV0dG9ucyhhY3Rpb25CdXR0b25UeXBlOiAnbGlzdCcgfCAnZ3JpZCcgfCAnZ3JpZC1oaWRkZW4nKSB7XG4gICAgaWYgKGFjdGlvbkJ1dHRvblR5cGUgPT09ICdsaXN0Jykge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMubG9jYXRvckZvckFsbChgW25hbWU9XCJkYXRhLWxpc3QtYWN0aW9uLWJ1dHRvblwiXWApKClcbiAgICB9IGVsc2UgaWYgKGFjdGlvbkJ1dHRvblR5cGUgPT09ICdncmlkLWhpZGRlbicpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCkubG9jYXRvckZvckFsbChcbiAgICAgICAgYFtkYXRhLWF1dG9tYXRpb25pZD1cImRhdGEtZ3JpZC1hY3Rpb24tYnV0dG9uLWhpZGRlblwiXWBcbiAgICAgICkoKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5kb2N1bWVudFJvb3RMb2NhdG9yRmFjdG9yeSgpLmxvY2F0b3JGb3JBbGwoYFtkYXRhLWF1dG9tYXRpb25pZD1cImRhdGEtZ3JpZC1hY3Rpb24tYnV0dG9uXCJdYCkoKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGFjdGlvbkJ1dHRvbklzRGlzYWJsZWQoYWN0aW9uQnV0dG9uOiBUZXN0RWxlbWVudCwgdmlld1R5cGU6ICdsaXN0JyB8ICdncmlkJyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICh2aWV3VHlwZSA9PT0gJ2xpc3QnKSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWN0aW9uQnV0dG9uLmdldFByb3BlcnR5KCdkaXNhYmxlZCcpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBhd2FpdCBhY3Rpb25CdXR0b24uaGFzQ2xhc3MoJ3AtZGlzYWJsZWQnKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGhhc0Ftb3VudE9mQWN0aW9uQnV0dG9ucyhhY3Rpb25CdXR0b25UeXBlOiAnbGlzdCcgfCAnZ3JpZCcgfCAnZ3JpZC1oaWRkZW4nLCBhbW91bnQ6IG51bWJlcikge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRBY3Rpb25CdXR0b25zKGFjdGlvbkJ1dHRvblR5cGUpKS5sZW5ndGggPT09IGFtb3VudFxuICB9XG5cbiAgYXN5bmMgaGFzQW1vdW50T2ZEaXNhYmxlZEFjdGlvbkJ1dHRvbnModmlld1R5cGU6ICdsaXN0JyB8ICdncmlkJywgYW1vdW50OiBudW1iZXIpIHtcbiAgICBsZXQgZGlzYWJsZWRBY3Rpb25CdXR0b25zQ291bnQgPSAwXG4gICAgY29uc3QgYWN0aW9uQnV0dG9ucyA9IGF3YWl0IHRoaXMuZ2V0QWN0aW9uQnV0dG9ucyh2aWV3VHlwZSlcbiAgICBhd2FpdCBwYXJhbGxlbCgoKSA9PlxuICAgICAgYWN0aW9uQnV0dG9ucy5tYXAoYXN5bmMgKGFjdGlvbkJ1dHRvbikgPT4ge1xuICAgICAgICBpZiAoKGF3YWl0IHRoaXMuYWN0aW9uQnV0dG9uSXNEaXNhYmxlZChhY3Rpb25CdXR0b24sIHZpZXdUeXBlKSkgPT09IHRydWUpIHtcbiAgICAgICAgICBkaXNhYmxlZEFjdGlvbkJ1dHRvbnNDb3VudCsrXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICAgIHJldHVybiBkaXNhYmxlZEFjdGlvbkJ1dHRvbnNDb3VudCA9PT0gYW1vdW50XG4gIH1cbn1cbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWdyaWQuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci90ZXN0aW5nL2RhdGEtbGlzdC1ncmlkLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdDQUFnQyxFQUFlLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXpFLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxnQ0FBZ0M7SUFBekU7O1FBR0Usd0JBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO1FBQ2hFLGlCQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ2pELGtCQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFBO0lBMkN4RSxDQUFDO2FBL0NRLGlCQUFZLEdBQUcsb0JBQW9CLEFBQXZCLENBQXVCO0lBTTFDLEtBQUssQ0FBQyxtQkFBbUI7UUFDdkIsTUFBTSxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUM1QyxPQUFPLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUE7SUFDM0QsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBaUQ7UUFDdEUsSUFBSSxnQkFBZ0IsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNoQyxPQUFPLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFLENBQUE7UUFDdkUsQ0FBQzthQUFNLElBQUksZ0JBQWdCLEtBQUssYUFBYSxFQUFFLENBQUM7WUFDOUMsT0FBTyxNQUFNLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLGFBQWEsQ0FDMUQsc0RBQXNELENBQ3ZELEVBQUUsQ0FBQTtRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxNQUFNLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLGFBQWEsQ0FBQywrQ0FBK0MsQ0FBQyxFQUFFLENBQUE7UUFDakgsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsWUFBeUIsRUFBRSxRQUF5QjtRQUMvRSxJQUFJLFFBQVEsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUN4QixPQUFPLE1BQU0sWUFBWSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNuRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sTUFBTSxZQUFZLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLHdCQUF3QixDQUFDLGdCQUFpRCxFQUFFLE1BQWM7UUFDOUYsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFBO0lBQzFFLENBQUM7SUFFRCxLQUFLLENBQUMsZ0NBQWdDLENBQUMsUUFBeUIsRUFBRSxNQUFjO1FBQzlFLElBQUksMEJBQTBCLEdBQUcsQ0FBQyxDQUFBO1FBQ2xDLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQzNELE1BQU0sUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUNsQixhQUFhLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3pFLDBCQUEwQixFQUFFLENBQUE7WUFDOUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUE7UUFDRCxPQUFPLDBCQUEwQixLQUFLLE1BQU0sQ0FBQTtJQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudENvbnRhaW5lckNvbXBvbmVudEhhcm5lc3MsIFRlc3RFbGVtZW50LCBwYXJhbGxlbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJ1xuaW1wb3J0IHsgUFBhZ2luYXRvckhhcm5lc3MgfSBmcm9tICdAb25lY3gvYW5ndWxhci10ZXN0aW5nJ1xuaW1wb3J0IHsgRGVmYXVsdEdyaWRJdGVtSGFybmVzcyB9IGZyb20gJy4vZGVmYXVsdC1ncmlkLWl0ZW0uaGFybmVzcydcbmltcG9ydCB7IERlZmF1bHRMaXN0SXRlbUhhcm5lc3MgfSBmcm9tICcuL2RlZmF1bHQtbGlzdC1pdGVtLmhhcm5lc3MnXG5pbXBvcnQgeyB3YWl0Rm9yRGVmZXJyZWRWaWV3c1RvQmVSZW5kZXJlZCB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLXRlc3RpbmcnXG5cbmV4cG9ydCBjbGFzcyBEYXRhTGlzdEdyaWRIYXJuZXNzIGV4dGVuZHMgQ29udGVudENvbnRhaW5lckNvbXBvbmVudEhhcm5lc3Mge1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ29jeC1kYXRhLWxpc3QtZ3JpZCdcblxuICBnZXREZWZhdWx0R3JpZEl0ZW1zID0gdGhpcy5sb2NhdG9yRm9yQWxsKERlZmF1bHRHcmlkSXRlbUhhcm5lc3MpXG4gIGdldFBhZ2luYXRvciA9IHRoaXMubG9jYXRvckZvcihQUGFnaW5hdG9ySGFybmVzcylcbiAgZ2V0TWVudUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcihgW25hbWU9XCJkYXRhLWdyaWQtaXRlbS1tZW51LWJ1dHRvblwiXWApXG5cbiAgYXN5bmMgZ2V0RGVmYXVsdExpc3RJdGVtcygpIHtcbiAgICBhd2FpdCB3YWl0Rm9yRGVmZXJyZWRWaWV3c1RvQmVSZW5kZXJlZCh0aGlzKVxuICAgIHJldHVybiBhd2FpdCB0aGlzLmxvY2F0b3JGb3JBbGwoRGVmYXVsdExpc3RJdGVtSGFybmVzcykoKVxuICB9XG5cbiAgYXN5bmMgZ2V0QWN0aW9uQnV0dG9ucyhhY3Rpb25CdXR0b25UeXBlOiAnbGlzdCcgfCAnZ3JpZCcgfCAnZ3JpZC1oaWRkZW4nKSB7XG4gICAgaWYgKGFjdGlvbkJ1dHRvblR5cGUgPT09ICdsaXN0Jykge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMubG9jYXRvckZvckFsbChgW25hbWU9XCJkYXRhLWxpc3QtYWN0aW9uLWJ1dHRvblwiXWApKClcbiAgICB9IGVsc2UgaWYgKGFjdGlvbkJ1dHRvblR5cGUgPT09ICdncmlkLWhpZGRlbicpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCkubG9jYXRvckZvckFsbChcbiAgICAgICAgYFtkYXRhLWF1dG9tYXRpb25pZD1cImRhdGEtZ3JpZC1hY3Rpb24tYnV0dG9uLWhpZGRlblwiXWBcbiAgICAgICkoKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5kb2N1bWVudFJvb3RMb2NhdG9yRmFjdG9yeSgpLmxvY2F0b3JGb3JBbGwoYFtkYXRhLWF1dG9tYXRpb25pZD1cImRhdGEtZ3JpZC1hY3Rpb24tYnV0dG9uXCJdYCkoKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGFjdGlvbkJ1dHRvbklzRGlzYWJsZWQoYWN0aW9uQnV0dG9uOiBUZXN0RWxlbWVudCwgdmlld1R5cGU6ICdsaXN0JyB8ICdncmlkJyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICh2aWV3VHlwZSA9PT0gJ2xpc3QnKSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWN0aW9uQnV0dG9uLmdldFByb3BlcnR5KCdkaXNhYmxlZCcpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBhd2FpdCBhY3Rpb25CdXR0b24uaGFzQ2xhc3MoJ3AtZGlzYWJsZWQnKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGhhc0Ftb3VudE9mQWN0aW9uQnV0dG9ucyhhY3Rpb25CdXR0b25UeXBlOiAnbGlzdCcgfCAnZ3JpZCcgfCAnZ3JpZC1oaWRkZW4nLCBhbW91bnQ6IG51bWJlcikge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRBY3Rpb25CdXR0b25zKGFjdGlvbkJ1dHRvblR5cGUpKS5sZW5ndGggPT09IGFtb3VudFxuICB9XG5cbiAgYXN5bmMgaGFzQW1vdW50T2ZEaXNhYmxlZEFjdGlvbkJ1dHRvbnModmlld1R5cGU6ICdsaXN0JyB8ICdncmlkJywgYW1vdW50OiBudW1iZXIpIHtcbiAgICBsZXQgZGlzYWJsZWRBY3Rpb25CdXR0b25zQ291bnQgPSAwXG4gICAgY29uc3QgYWN0aW9uQnV0dG9ucyA9IGF3YWl0IHRoaXMuZ2V0QWN0aW9uQnV0dG9ucyh2aWV3VHlwZSlcbiAgICBhd2FpdCBwYXJhbGxlbCgoKSA9PlxuICAgICAgYWN0aW9uQnV0dG9ucy5tYXAoYXN5bmMgKGFjdGlvbkJ1dHRvbikgPT4ge1xuICAgICAgICBpZiAoKGF3YWl0IHRoaXMuYWN0aW9uQnV0dG9uSXNEaXNhYmxlZChhY3Rpb25CdXR0b24sIHZpZXdUeXBlKSkgPT09IHRydWUpIHtcbiAgICAgICAgICBkaXNhYmxlZEFjdGlvbkJ1dHRvbnNDb3VudCsrXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICAgIHJldHVybiBkaXNhYmxlZEFjdGlvbkJ1dHRvbnNDb3VudCA9PT0gYW1vdW50XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import { ComponentHarness } from '@angular/cdk/testing';
2
2
  import { ButtonHarness, DivHarness } from '@onecx/angular-testing';
3
+ import { waitForDeferredViewsToBeRendered } from '@onecx/angular-testing';
3
4
  export class DefaultListItemHarness extends ComponentHarness {
4
5
  constructor() {
5
6
  super(...arguments);
@@ -11,6 +12,7 @@ export class DefaultListItemHarness extends ComponentHarness {
11
12
  }
12
13
  static { this.hostSelector = '.data-list-items'; }
13
14
  async getData() {
15
+ await waitForDeferredViewsToBeRendered(this);
14
16
  const isDataListItemsDiv = await Promise.all((await this.getAllDivs()).map((innerDivHarness) => this.checkDivsHasClasses(innerDivHarness)));
15
17
  const divHarnesses = (await this.getAllDivs()).filter((_v, index) => isDataListItemsDiv[index]);
16
18
  const getDivTexts = await Promise.all(divHarnesses.map((divHarness) => divHarness.getText()));
@@ -21,4 +23,4 @@ export class DefaultListItemHarness extends ComponentHarness {
21
23
  return hasClass;
22
24
  }
23
25
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1saXN0LWl0ZW0uaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci90ZXN0aW5nL2RlZmF1bHQtbGlzdC1pdGVtLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUVsRSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBQTVEOztRQUdFLHdCQUFtQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDbEQsa0JBQWEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUM1RixrQkFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzVGLG9CQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFeEYsZUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUE7SUFlckQsQ0FBQzthQXRCUSxpQkFBWSxHQUFHLGtCQUFrQixBQUFyQixDQUFxQjtJQVN4QyxLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUMxQyxDQUFDLE1BQU0sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDOUYsQ0FBQTtRQUNELE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1FBQy9GLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzdGLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsS0FBaUI7UUFDekMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzVHLE9BQU8sUUFBUSxDQUFBO0lBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5pbXBvcnQgeyBCdXR0b25IYXJuZXNzLCBEaXZIYXJuZXNzIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcblxuZXhwb3J0IGNsYXNzIERlZmF1bHRMaXN0SXRlbUhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcuZGF0YS1saXN0LWl0ZW1zJ1xuXG4gIGdldEFsbEFjdGlvbkJ1dHRvbnMgPSB0aGlzLmxvY2F0b3JGb3JBbGwoJ2J1dHRvbicpXG4gIGdldFZpZXdCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChCdXR0b25IYXJuZXNzLndpdGgoeyBjbGFzczogJ3ZpZXdMaXN0SXRlbUJ1dHRvbicgfSkpXG4gIGdldEVkaXRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChCdXR0b25IYXJuZXNzLndpdGgoeyBjbGFzczogJ2VkaXRMaXN0SXRlbUJ1dHRvbicgfSkpXG4gIGdldERlbGV0ZUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKEJ1dHRvbkhhcm5lc3Mud2l0aCh7IGNsYXNzOiAnZGVsZXRlTGlzdEl0ZW1CdXR0b24nIH0pKVxuXG4gIHByaXZhdGUgZ2V0QWxsRGl2cyA9IHRoaXMubG9jYXRvckZvckFsbChEaXZIYXJuZXNzKVxuXG4gIGFzeW5jIGdldERhdGEoKSB7XG4gICAgY29uc3QgaXNEYXRhTGlzdEl0ZW1zRGl2ID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAoYXdhaXQgdGhpcy5nZXRBbGxEaXZzKCkpLm1hcCgoaW5uZXJEaXZIYXJuZXNzKSA9PiB0aGlzLmNoZWNrRGl2c0hhc0NsYXNzZXMoaW5uZXJEaXZIYXJuZXNzKSlcbiAgICApXG4gICAgY29uc3QgZGl2SGFybmVzc2VzID0gKGF3YWl0IHRoaXMuZ2V0QWxsRGl2cygpKS5maWx0ZXIoKF92LCBpbmRleCkgPT4gaXNEYXRhTGlzdEl0ZW1zRGl2W2luZGV4XSlcbiAgICBjb25zdCBnZXREaXZUZXh0cyA9IGF3YWl0IFByb21pc2UuYWxsKGRpdkhhcm5lc3Nlcy5tYXAoKGRpdkhhcm5lc3MpID0+IGRpdkhhcm5lc3MuZ2V0VGV4dCgpKSlcbiAgICByZXR1cm4gZ2V0RGl2VGV4dHNcbiAgfVxuXG4gIGFzeW5jIGNoZWNrRGl2c0hhc0NsYXNzZXModmFsdWU6IERpdkhhcm5lc3MpIHtcbiAgICBjb25zdCBoYXNDbGFzcyA9IChhd2FpdCB2YWx1ZS5jaGVja0hhc0NsYXNzKCdpdGVtLW5hbWUtcm93JykpIHx8IChhd2FpdCB2YWx1ZS5jaGVja0hhc0NsYXNzKCdzdWJ0aXRsZUxpbmUnKSlcbiAgICByZXR1cm4gaGFzQ2xhc3NcbiAgfVxufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1saXN0LWl0ZW0uaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1hY2NlbGVyYXRvci90ZXN0aW5nL2RlZmF1bHQtbGlzdC1pdGVtLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUV6RSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBQTVEOztRQUdFLHdCQUFtQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDbEQsa0JBQWEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUM1RixrQkFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzVGLG9CQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFeEYsZUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUE7SUFnQnJELENBQUM7YUF2QlEsaUJBQVksR0FBRyxrQkFBa0IsQUFBckIsQ0FBcUI7SUFTeEMsS0FBSyxDQUFDLE9BQU87UUFDWCxNQUFNLGdDQUFnQyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzVDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUMxQyxDQUFDLE1BQU0sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDOUYsQ0FBQTtRQUNELE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1FBQy9GLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzdGLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsS0FBaUI7UUFDekMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzVHLE9BQU8sUUFBUSxDQUFBO0lBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5pbXBvcnQgeyBCdXR0b25IYXJuZXNzLCBEaXZIYXJuZXNzIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcbmltcG9ydCB7IHdhaXRGb3JEZWZlcnJlZFZpZXdzVG9CZVJlbmRlcmVkIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcblxuZXhwb3J0IGNsYXNzIERlZmF1bHRMaXN0SXRlbUhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcuZGF0YS1saXN0LWl0ZW1zJ1xuXG4gIGdldEFsbEFjdGlvbkJ1dHRvbnMgPSB0aGlzLmxvY2F0b3JGb3JBbGwoJ2J1dHRvbicpXG4gIGdldFZpZXdCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChCdXR0b25IYXJuZXNzLndpdGgoeyBjbGFzczogJ3ZpZXdMaXN0SXRlbUJ1dHRvbicgfSkpXG4gIGdldEVkaXRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChCdXR0b25IYXJuZXNzLndpdGgoeyBjbGFzczogJ2VkaXRMaXN0SXRlbUJ1dHRvbicgfSkpXG4gIGdldERlbGV0ZUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKEJ1dHRvbkhhcm5lc3Mud2l0aCh7IGNsYXNzOiAnZGVsZXRlTGlzdEl0ZW1CdXR0b24nIH0pKVxuXG4gIHByaXZhdGUgZ2V0QWxsRGl2cyA9IHRoaXMubG9jYXRvckZvckFsbChEaXZIYXJuZXNzKVxuXG4gIGFzeW5jIGdldERhdGEoKSB7XG4gICAgYXdhaXQgd2FpdEZvckRlZmVycmVkVmlld3NUb0JlUmVuZGVyZWQodGhpcylcbiAgICBjb25zdCBpc0RhdGFMaXN0SXRlbXNEaXYgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIChhd2FpdCB0aGlzLmdldEFsbERpdnMoKSkubWFwKChpbm5lckRpdkhhcm5lc3MpID0+IHRoaXMuY2hlY2tEaXZzSGFzQ2xhc3Nlcyhpbm5lckRpdkhhcm5lc3MpKVxuICAgIClcbiAgICBjb25zdCBkaXZIYXJuZXNzZXMgPSAoYXdhaXQgdGhpcy5nZXRBbGxEaXZzKCkpLmZpbHRlcigoX3YsIGluZGV4KSA9PiBpc0RhdGFMaXN0SXRlbXNEaXZbaW5kZXhdKVxuICAgIGNvbnN0IGdldERpdlRleHRzID0gYXdhaXQgUHJvbWlzZS5hbGwoZGl2SGFybmVzc2VzLm1hcCgoZGl2SGFybmVzcykgPT4gZGl2SGFybmVzcy5nZXRUZXh0KCkpKVxuICAgIHJldHVybiBnZXREaXZUZXh0c1xuICB9XG5cbiAgYXN5bmMgY2hlY2tEaXZzSGFzQ2xhc3Nlcyh2YWx1ZTogRGl2SGFybmVzcykge1xuICAgIGNvbnN0IGhhc0NsYXNzID0gKGF3YWl0IHZhbHVlLmNoZWNrSGFzQ2xhc3MoJ2l0ZW0tbmFtZS1yb3cnKSkgfHwgKGF3YWl0IHZhbHVlLmNoZWNrSGFzQ2xhc3MoJ3N1YnRpdGxlTGluZScpKVxuICAgIHJldHVybiBoYXNDbGFzc1xuICB9XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
+ import { ensureIntersectionObserverMockExists } from '@onecx/angular-testing';
1
2
  export * from './column-group-selection.harness';
2
3
  export * from './custom-group-column-selector.harness';
3
4
  export * from './data-layout-selection.harness';
@@ -17,4 +18,6 @@ export * from './search-header.harness';
17
18
  export * from '@angular/cdk/testing';
18
19
  export * from '@angular/cdk/testing/testbed';
19
20
  export * from '@onecx/angular-testing';
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3IvdGVzdGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQTtBQUNuQyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLG9DQUFvQyxDQUFBO0FBQ2xELGNBQWMsdUJBQXVCLENBQUE7QUFDckMsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHlCQUF5QixDQUFBO0FBRXZDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHdCQUF3QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb2x1bW4tZ3JvdXAtc2VsZWN0aW9uLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2N1c3RvbS1ncm91cC1jb2x1bW4tc2VsZWN0b3IuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1sYXlvdXQtc2VsZWN0aW9uLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtbGlzdC1ncmlkLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtdGFibGUuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS12aWV3Lmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RlZmF1bHQtZ3JpZC1pdGVtLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RlZmF1bHQtbGlzdC1pdGVtLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RpYWdyYW0uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLXZpZXcuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZ3JvdXAtYnktY291bnQtZGlhZ3JhbS5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmFjdGl2ZS1kYXRhLXZpZXcuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vbW9yZS1hY3Rpb25zLW1lbnUtYnV0dG9uLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL3BhZ2UtaGVhZGVyLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL3Nsb3QuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLWhlYWRlci5oYXJuZXNzJ1xuXG5leHBvcnQgKiBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcbmV4cG9ydCAqIGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nL3Rlc3RiZWQnXG5leHBvcnQgKiBmcm9tICdAb25lY3gvYW5ndWxhci10ZXN0aW5nJ1xuIl19
21
+ ensureIntersectionObserverMockExists();
22
+ global.origin = '';
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3IvdGVzdGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUU3RSxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQTtBQUNuQyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLG9DQUFvQyxDQUFBO0FBQ2xELGNBQWMsdUJBQXVCLENBQUE7QUFDckMsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHlCQUF5QixDQUFBO0FBRXZDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHdCQUF3QixDQUFBO0FBRXRDLG9DQUFvQyxFQUFFLENBQUE7QUFFdEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlbnN1cmVJbnRlcnNlY3Rpb25PYnNlcnZlck1vY2tFeGlzdHMgfSBmcm9tICdAb25lY3gvYW5ndWxhci10ZXN0aW5nJ1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi1ncm91cC1zZWxlY3Rpb24uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vY3VzdG9tLWdyb3VwLWNvbHVtbi1zZWxlY3Rvci5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWxheW91dC1zZWxlY3Rpb24uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1saXN0LWdyaWQuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS10YWJsZS5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLXZpZXcuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGVmYXVsdC1ncmlkLWl0ZW0uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGVmYXVsdC1saXN0LWl0ZW0uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZGlhZ3JhbS5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItdmlldy5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1ieS1jb3VudC1kaWFncmFtLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2ludGVyYWN0aXZlLWRhdGEtdmlldy5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9tb3JlLWFjdGlvbnMtbWVudS1idXR0b24uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vcGFnZS1oZWFkZXIuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vc2xvdC5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gtaGVhZGVyLmhhcm5lc3MnXG5cbmV4cG9ydCAqIGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJ1xuZXhwb3J0ICogZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcvdGVzdGJlZCdcbmV4cG9ydCAqIGZyb20gJ0BvbmVjeC9hbmd1bGFyLXRlc3RpbmcnXG5cbmVuc3VyZUludGVyc2VjdGlvbk9ic2VydmVyTW9ja0V4aXN0cygpXG5kZWNsYXJlIGxldCBnbG9iYWw6IGFueVxuZ2xvYmFsLm9yaWdpbiA9ICcnIl19
@@ -1,7 +1,7 @@
1
+ import { PDropdownHarness, PButtonHarness, PDialogHarness, PPicklistHarness, PSelectButtonHarness, MenuItemHarness, DivHarness, ButtonHarness, waitForDeferredViewsToBeRendered, PPaginatorHarness, TableHeaderColumnHarness, TableRowHarness, PTableCheckboxHarness, PChartHarness, PBreadcrumbHarness, PMenuHarness, ensureIntersectionObserverMockExists } from '@onecx/angular-testing';
2
+ export * from '@onecx/angular-testing';
1
3
  import { ComponentHarness, ContentContainerComponentHarness, parallel, HarnessPredicate, PButtonHarness as PButtonHarness$1, PChipHarness, SpanHarness } from '@angular/cdk/testing';
2
4
  export * from '@angular/cdk/testing';
3
- import { PDropdownHarness, PButtonHarness, PDialogHarness, PPicklistHarness, PSelectButtonHarness, MenuItemHarness, DivHarness, ButtonHarness, PPaginatorHarness, TableHeaderColumnHarness, TableRowHarness, PTableCheckboxHarness, PChartHarness, PBreadcrumbHarness, PMenuHarness } from '@onecx/angular-testing';
4
- export * from '@onecx/angular-testing';
5
5
  export * from '@angular/cdk/testing/testbed';
6
6
 
7
7
  class ColumnGroupSelectionHarness extends ComponentHarness {
@@ -136,6 +136,7 @@ class DefaultListItemHarness extends ComponentHarness {
136
136
  }
137
137
  static { this.hostSelector = '.data-list-items'; }
138
138
  async getData() {
139
+ await waitForDeferredViewsToBeRendered(this);
139
140
  const isDataListItemsDiv = await Promise.all((await this.getAllDivs()).map((innerDivHarness) => this.checkDivsHasClasses(innerDivHarness)));
140
141
  const divHarnesses = (await this.getAllDivs()).filter((_v, index) => isDataListItemsDiv[index]);
141
142
  const getDivTexts = await Promise.all(divHarnesses.map((divHarness) => divHarness.getText()));
@@ -151,11 +152,14 @@ class DataListGridHarness extends ContentContainerComponentHarness {
151
152
  constructor() {
152
153
  super(...arguments);
153
154
  this.getDefaultGridItems = this.locatorForAll(DefaultGridItemHarness);
154
- this.getDefaultListItems = this.locatorForAll(DefaultListItemHarness);
155
155
  this.getPaginator = this.locatorFor(PPaginatorHarness);
156
156
  this.getMenuButton = this.locatorFor(`[name="data-grid-item-menu-button"]`);
157
157
  }
158
158
  static { this.hostSelector = 'ocx-data-list-grid'; }
159
+ async getDefaultListItems() {
160
+ await waitForDeferredViewsToBeRendered(this);
161
+ return await this.locatorForAll(DefaultListItemHarness)();
162
+ }
159
163
  async getActionButtons(actionButtonType) {
160
164
  if (actionButtonType === 'list') {
161
165
  return await this.locatorForAll(`[name="data-list-action-button"]`)();
@@ -438,6 +442,9 @@ class SearchHeaderHarness extends ComponentHarness {
438
442
  }
439
443
  }
440
444
 
445
+ ensureIntersectionObserverMockExists();
446
+ global.origin = '';
447
+
441
448
  /**
442
449
  * Generated bundle index. Do not edit.
443
450
  */