@onecx/angular-accelerator 5.15.0 → 5.16.1
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.
- package/esm2022/index.mjs +2 -4
- package/esm2022/lib/angular-accelerator.module.mjs +10 -10
- package/esm2022/lib/components/data-list-grid/data-list-grid.component.mjs +1 -1
- package/esm2022/lib/components/data-table/data-table.component.mjs +1 -1
- package/esm2022/lib/components/interactive-data-view/interactive-data-view.component.mjs +115 -71
- package/esm2022/lib/components/search-header/search-header.component.mjs +77 -36
- package/esm2022/lib/directives/if-permission.directive.mjs +20 -8
- package/esm2022/lib/utils/create-remote-component-and-mfe-translate-loader.utils.mjs +12 -0
- package/esm2022/testing/index.mjs +2 -2
- package/esm2022/testing/interactive-data-view.harness.mjs +4 -2
- package/esm2022/testing/search-header.harness.mjs +1 -3
- package/esm2022/testing/slot.harness.mjs +5 -0
- package/fesm2022/onecx-angular-accelerator-testing.mjs +7 -11
- package/fesm2022/onecx-angular-accelerator-testing.mjs.map +1 -1
- package/fesm2022/onecx-angular-accelerator.mjs +247 -214
- package/fesm2022/onecx-angular-accelerator.mjs.map +1 -1
- package/index.d.ts +1 -3
- package/lib/angular-accelerator.module.d.ts +16 -16
- package/lib/components/interactive-data-view/interactive-data-view.component.d.ts +15 -2
- package/lib/components/search-header/search-header.component.d.ts +30 -9
- package/lib/directives/if-permission.directive.d.ts +6 -4
- package/lib/utils/create-remote-component-and-mfe-translate-loader.utils.d.ts +6 -0
- package/package.json +2 -1
- package/testing/index.d.ts +1 -1
- package/testing/interactive-data-view.harness.d.ts +3 -1
- package/testing/search-header.harness.d.ts +0 -2
- package/testing/slot.harness.d.ts +7 -0
- package/esm2022/lib/components/search-config/search-config.component.mjs +0 -34
- package/esm2022/lib/model/search-config-info.mjs +0 -2
- package/esm2022/lib/services/app-config-service.mjs +0 -43
- package/esm2022/testing/search-config.harness.mjs +0 -10
- package/lib/components/search-config/search-config.component.d.ts +0 -16
- package/lib/model/search-config-info.d.ts +0 -4
- package/lib/services/app-config-service.d.ts +0 -18
- package/testing/search-config.harness.d.ts +0 -6
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
import { Component, ContentChild, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
1
|
+
import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChild, } from '@angular/core';
|
|
2
|
+
import { FormControlName, FormGroupDirective } from '@angular/forms';
|
|
3
|
+
import { combineLatest, debounceTime, map, of, startWith } from 'rxjs';
|
|
4
|
+
import { getLocation } from '@onecx/accelerator';
|
|
2
5
|
import * as i0 from "@angular/core";
|
|
3
6
|
import * as i1 from "@angular/common";
|
|
4
7
|
import * as i2 from "primeng/tooltip";
|
|
5
8
|
import * as i3 from "primeng/button";
|
|
6
|
-
import * as i4 from "
|
|
7
|
-
import * as i5 from "
|
|
8
|
-
import * as i6 from "
|
|
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";
|
|
9
14
|
/**
|
|
10
15
|
* To trigger the search when Enter key is pressed inside a search parameter field,
|
|
11
16
|
* an EventListener for keyup enter event is added for HTML elements which have an input.
|
|
@@ -13,21 +18,6 @@ import * as i6 from "@ngx-translate/core";
|
|
|
13
18
|
* which do not have an input element.
|
|
14
19
|
*/
|
|
15
20
|
export class SearchHeaderComponent {
|
|
16
|
-
constructor() {
|
|
17
|
-
this.header = '';
|
|
18
|
-
this.viewMode = 'basic';
|
|
19
|
-
this.manualBreadcrumbs = false;
|
|
20
|
-
this._actions = [];
|
|
21
|
-
this.searchButtonDisabled = false;
|
|
22
|
-
this.resetButtonDisabled = false;
|
|
23
|
-
this.searched = new EventEmitter();
|
|
24
|
-
this.resetted = new EventEmitter();
|
|
25
|
-
this.selectedSearchConfigChanged = new EventEmitter();
|
|
26
|
-
this.viewModeChanged = new EventEmitter();
|
|
27
|
-
this.componentStateChanged = new EventEmitter();
|
|
28
|
-
this.hasAdvanced = false;
|
|
29
|
-
this.headerActions = [];
|
|
30
|
-
}
|
|
31
21
|
/**
|
|
32
22
|
* @deprecated Will be replaced by header
|
|
33
23
|
*/
|
|
@@ -37,6 +27,20 @@ export class SearchHeaderComponent {
|
|
|
37
27
|
set headline(value) {
|
|
38
28
|
this.header = value;
|
|
39
29
|
}
|
|
30
|
+
get viewMode() {
|
|
31
|
+
return this._viewMode;
|
|
32
|
+
}
|
|
33
|
+
set viewMode(viewMode) {
|
|
34
|
+
if (this.viewMode !== viewMode) {
|
|
35
|
+
this._viewMode = viewMode;
|
|
36
|
+
this.viewModeChanged?.emit(this.viewMode);
|
|
37
|
+
this.componentStateChanged.emit({
|
|
38
|
+
activeViewMode: this.viewMode,
|
|
39
|
+
});
|
|
40
|
+
this.updateHeaderActions();
|
|
41
|
+
setTimeout(() => this.addKeyUpEventListener());
|
|
42
|
+
}
|
|
43
|
+
}
|
|
40
44
|
get actions() {
|
|
41
45
|
return this._actions;
|
|
42
46
|
}
|
|
@@ -50,17 +54,49 @@ export class SearchHeaderComponent {
|
|
|
50
54
|
get _additionalToolbarContentLeft() {
|
|
51
55
|
return this.additionalToolbarContentLeft;
|
|
52
56
|
}
|
|
57
|
+
get searchConfigChangeObserved() {
|
|
58
|
+
return this.selectedSearchConfigChanged.observed;
|
|
59
|
+
}
|
|
60
|
+
constructor() {
|
|
61
|
+
this.header = '';
|
|
62
|
+
this._viewMode = 'basic';
|
|
63
|
+
this.manualBreadcrumbs = false;
|
|
64
|
+
this._actions = [];
|
|
65
|
+
this.searchButtonDisabled = false;
|
|
66
|
+
this.resetButtonDisabled = false;
|
|
67
|
+
this.pageName = getLocation().applicationPath;
|
|
68
|
+
this.searched = new EventEmitter();
|
|
69
|
+
this.resetted = new EventEmitter();
|
|
70
|
+
this.selectedSearchConfigChanged = new EventEmitter();
|
|
71
|
+
this.viewModeChanged = new EventEmitter();
|
|
72
|
+
this.componentStateChanged = new EventEmitter();
|
|
73
|
+
this.hasAdvanced = false;
|
|
74
|
+
this.headerActions = [];
|
|
75
|
+
this.fieldValues$ = of({});
|
|
76
|
+
this.searchConfigChangedSlotEmitter = new EventEmitter();
|
|
77
|
+
this.searchConfigChangedSlotEmitter.subscribe((config) => {
|
|
78
|
+
this.componentStateChanged.emit({
|
|
79
|
+
selectedSearchConfig: config?.name ?? null,
|
|
80
|
+
});
|
|
81
|
+
this.selectedSearchConfigChanged.emit(config);
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
ngAfterContentInit() {
|
|
85
|
+
if (this.formGroup) {
|
|
86
|
+
this.fieldValues$ = combineLatest([
|
|
87
|
+
this.formGroup.valueChanges.pipe(startWith({})),
|
|
88
|
+
this.visibleFormControls.changes.pipe(startWith(null)),
|
|
89
|
+
]).pipe(debounceTime(100), map(([values, _]) => Object.entries(values ?? {}).reduce((acc, [key, value]) => ({
|
|
90
|
+
...acc,
|
|
91
|
+
[key]: this.isVisible(key) ? value || undefined : undefined,
|
|
92
|
+
}), {})));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
53
95
|
ngAfterViewInit() {
|
|
54
96
|
this.addKeyUpEventListener();
|
|
55
97
|
}
|
|
56
98
|
toggleViewMode() {
|
|
57
99
|
this.viewMode = this.viewMode === 'basic' ? 'advanced' : 'basic';
|
|
58
|
-
this.viewModeChanged?.emit(this.viewMode);
|
|
59
|
-
this.componentStateChanged.emit({
|
|
60
|
-
activeViewMode: this.viewMode
|
|
61
|
-
});
|
|
62
|
-
this.updateHeaderActions();
|
|
63
|
-
setTimeout(() => this.addKeyUpEventListener());
|
|
64
100
|
}
|
|
65
101
|
onResetClicked() {
|
|
66
102
|
this.resetted.emit();
|
|
@@ -99,21 +135,16 @@ export class SearchHeaderComponent {
|
|
|
99
135
|
this.onSearchClicked();
|
|
100
136
|
}
|
|
101
137
|
}
|
|
102
|
-
|
|
103
|
-
this.
|
|
104
|
-
this.componentStateChanged.emit({
|
|
105
|
-
selectedSearchConfig: searchConfig
|
|
106
|
-
});
|
|
138
|
+
isVisible(control) {
|
|
139
|
+
return this.visibleFormControls.some((formControl) => formControl.name !== null && String(formControl.name) === control);
|
|
107
140
|
}
|
|
108
141
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SearchHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: SearchHeaderComponent, selector: "ocx-search-header", inputs: {
|
|
142
|
+
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-shell-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" }] }); }
|
|
110
143
|
}
|
|
111
144
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: SearchHeaderComponent, decorators: [{
|
|
112
145
|
type: Component,
|
|
113
|
-
args: [{ selector: 'ocx-search-header', 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 <ocx-search-config [
|
|
114
|
-
}], propDecorators: {
|
|
115
|
-
type: Input
|
|
116
|
-
}], header: [{
|
|
146
|
+
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-shell-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" }]
|
|
147
|
+
}], ctorParameters: () => [], propDecorators: { header: [{
|
|
117
148
|
type: Input
|
|
118
149
|
}], headline: [{
|
|
119
150
|
type: Input
|
|
@@ -125,10 +156,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
125
156
|
type: Input
|
|
126
157
|
}], actions: [{
|
|
127
158
|
type: Input
|
|
159
|
+
}], searchConfigPermission: [{
|
|
160
|
+
type: Input
|
|
128
161
|
}], searchButtonDisabled: [{
|
|
129
162
|
type: Input
|
|
130
163
|
}], resetButtonDisabled: [{
|
|
131
164
|
type: Input
|
|
165
|
+
}], pageName: [{
|
|
166
|
+
type: Input
|
|
132
167
|
}], searched: [{
|
|
133
168
|
type: Output
|
|
134
169
|
}], resetted: [{
|
|
@@ -145,8 +180,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
145
180
|
}], additionalToolbarContentLeft: [{
|
|
146
181
|
type: ContentChild,
|
|
147
182
|
args: ['additionalToolbarContentLeft']
|
|
183
|
+
}], formGroup: [{
|
|
184
|
+
type: ContentChild,
|
|
185
|
+
args: [FormGroupDirective]
|
|
186
|
+
}], visibleFormControls: [{
|
|
187
|
+
type: ContentChildren,
|
|
188
|
+
args: [FormControlName, { descendants: true }]
|
|
148
189
|
}], searchParameterFields: [{
|
|
149
190
|
type: ViewChild,
|
|
150
191
|
args: ['searchParameterFields']
|
|
151
192
|
}] } });
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFFWixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7Ozs7Ozs7O0FBU3RCOzs7OztHQUtHO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjtJQUpsQztRQU1XLFdBQU0sR0FBRyxFQUFFLENBQUE7UUFhWCxhQUFRLEdBQXlCLE9BQU8sQ0FBQTtRQUN4QyxzQkFBaUIsR0FBRyxLQUFLLENBQUE7UUFDbEMsYUFBUSxHQUFhLEVBQUUsQ0FBQTtRQVNkLHlCQUFvQixHQUFHLEtBQUssQ0FBQTtRQUM1Qix3QkFBbUIsR0FBRyxLQUFLLENBQUE7UUFFMUIsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFBO1FBQ2hELGFBQVEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQTtRQUNoRCxnQ0FBMkIsR0FBbUMsSUFBSSxZQUFZLEVBQUUsQ0FBQTtRQUNoRixvQkFBZSxHQUF1QyxJQUFJLFlBQVksRUFBRSxDQUFBO1FBQ3hFLDBCQUFxQixHQUE2QyxJQUFJLFlBQVksRUFBRSxDQUFBO1FBZ0I5RixnQkFBVyxHQUFHLEtBQUssQ0FBQTtRQUNuQixrQkFBYSxHQUFhLEVBQUUsQ0FBQTtLQWtFN0I7SUFoSEM7O09BRUc7SUFDSCxJQUNJLFFBQVE7UUFD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LElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDeEIsQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxZQUE4QjtRQUNoRCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3BELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7WUFDOUIsb0JBQW9CLEVBQUUsWUFBWTtTQUNuQyxDQUFDLENBQUE7SUFDSixDQUFDOzhHQW5IVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiwyNUJDN0JsQywyK0RBcURBOzsyRkR4QmEscUJBQXFCO2tCQUpqQyxTQUFTOytCQUNFLG1CQUFtQjs4QkFJcEIsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBTUYsUUFBUTtzQkFEWCxLQUFLO2dCQU9HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBR0YsT0FBTztzQkFEVixLQUFLO2dCQVFHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLDJCQUEyQjtzQkFBcEMsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFFUCx3QkFBd0I7c0JBRHZCLFlBQVk7dUJBQUMsMEJBQTBCO2dCQU94Qyw0QkFBNEI7c0JBRDNCLFlBQVk7dUJBQUMsOEJBQThCO2dCQU9SLHFCQUFxQjtzQkFBeEQsU0FBUzt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnLi4vcGFnZS1oZWFkZXIvcGFnZS1oZWFkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgU2VhcmNoQ29uZmlnSW5mbyB9IGZyb20gJy4uLy4uL21vZGVsL3NlYXJjaC1jb25maWctaW5mbydcblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hIZWFkZXJDb21wb25lbnRTdGF0ZSB7XG4gIGFjdGl2ZVZpZXdNb2RlPzogJ2Jhc2ljJyB8ICdhZHZhbmNlZCdcbiAgc2VsZWN0ZWRTZWFyY2hDb25maWc/OiBTZWFyY2hDb25maWdJbmZvXG59XG5cbi8qKlxuICogVG8gdHJpZ2dlciB0aGUgc2VhcmNoIHdoZW4gRW50ZXIga2V5IGlzIHByZXNzZWQgaW5zaWRlIGEgc2VhcmNoIHBhcmFtZXRlciBmaWVsZCxcbiAqIGFuIEV2ZW50TGlzdGVuZXIgZm9yIGtleXVwIGVudGVyIGV2ZW50IGlzIGFkZGVkIGZvciBIVE1MIGVsZW1lbnRzIHdoaWNoIGhhdmUgYW4gaW5wdXQuXG4gKiBQbGVhc2UgYWRkIHRoZSBFdmVudExpc3RlbmVyIHlvdXJzZWxmIG1hbnVhbGx5LCBpZiB5b3Ugd2FudCB0byBoYXZlIHRoYXQgZnVuY3Rpb25hbGl0eSBmb3Igc29tZSBvdGhlciBlbGVtZW50c1xuICogd2hpY2ggZG8gbm90IGhhdmUgYW4gaW5wdXQgZWxlbWVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNlYXJjaC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBzZWFyY2hDb25maWdzOiBTZWFyY2hDb25maWdJbmZvW10gfCB1bmRlZmluZWRcbiAgQElucHV0KCkgaGVhZGVyID0gJydcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgV2lsbCBiZSByZXBsYWNlZCBieSBoZWFkZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBoZWFkbGluZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmhlYWRlclxuICB9XG4gIHNldCBoZWFkbGluZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5oZWFkZXIgPSB2YWx1ZVxuICB9XG4gIEBJbnB1dCgpIHN1YmhlYWRlcjogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIEBJbnB1dCgpIHZpZXdNb2RlOiAnYmFzaWMnIHwgJ2FkdmFuY2VkJyA9ICdiYXNpYydcbiAgQElucHV0KCkgbWFudWFsQnJlYWRjcnVtYnMgPSBmYWxzZVxuICBfYWN0aW9uczogQWN0aW9uW10gPSBbXVxuICBASW5wdXQoKVxuICBnZXQgYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1xuICB9XG4gIHNldCBhY3Rpb25zKHZhbHVlKSB7XG4gICAgdGhpcy5fYWN0aW9ucyA9IHZhbHVlXG4gICAgdGhpcy51cGRhdGVIZWFkZXJBY3Rpb25zKClcbiAgfVxuICBASW5wdXQoKSBzZWFyY2hCdXR0b25EaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIHJlc2V0QnV0dG9uRGlzYWJsZWQgPSBmYWxzZVxuXG4gIEBPdXRwdXQoKSBzZWFyY2hlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHJlc2V0dGVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VhcmNoQ29uZmlnSW5mbz4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHZpZXdNb2RlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPCdiYXNpYycgfCAnYWR2YW5jZWQnPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgY29tcG9uZW50U3RhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VhcmNoSGVhZGVyQ29tcG9uZW50U3RhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudCcpXG4gIGFkZGl0aW9uYWxUb29sYmFyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIGdldCBfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50KCk6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFkZGl0aW9uYWxUb29sYmFyQ29udGVudFxuICB9XG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkXG5cbiAgZ2V0IF9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0KCk6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaFBhcmFtZXRlckZpZWxkcycpIHNlYXJjaFBhcmFtZXRlckZpZWxkczogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxuXG4gIGhhc0FkdmFuY2VkID0gZmFsc2VcbiAgaGVhZGVyQWN0aW9uczogQWN0aW9uW10gPSBbXVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFkZEtleVVwRXZlbnRMaXN0ZW5lcigpXG4gIH1cblxuICB0b2dnbGVWaWV3TW9kZSgpIHtcbiAgICB0aGlzLnZpZXdNb2RlID0gdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJyA/ICdhZHZhbmNlZCcgOiAnYmFzaWMnXG4gICAgdGhpcy52aWV3TW9kZUNoYW5nZWQ/LmVtaXQodGhpcy52aWV3TW9kZSlcbiAgICB0aGlzLmNvbXBvbmVudFN0YXRlQ2hhbmdlZC5lbWl0KHtcbiAgICAgIGFjdGl2ZVZpZXdNb2RlOiB0aGlzLnZpZXdNb2RlXG4gICAgfSlcbiAgICB0aGlzLnVwZGF0ZUhlYWRlckFjdGlvbnMoKVxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hZGRLZXlVcEV2ZW50TGlzdGVuZXIoKSlcbiAgfVxuXG4gIG9uUmVzZXRDbGlja2VkKCkge1xuICAgIHRoaXMucmVzZXR0ZWQuZW1pdCgpXG4gIH1cblxuICBvblNlYXJjaENsaWNrZWQoKSB7XG4gICAgdGhpcy5zZWFyY2hlZC5lbWl0KClcbiAgfVxuXG4gIHVwZGF0ZUhlYWRlckFjdGlvbnMoKSB7XG4gICAgY29uc3QgaGVhZGVyQWN0aW9uczogQWN0aW9uW10gPSBbXVxuICAgIGlmICh0aGlzLmhhc0FkdmFuY2VkKSB7XG4gICAgICBoZWFkZXJBY3Rpb25zLnB1c2goe1xuICAgICAgICBpZDogJ3NpbXBsZUFkdmFuY2VkQnV0dG9uJyxcbiAgICAgICAgbGFiZWxLZXk6XG4gICAgICAgICAgdGhpcy52aWV3TW9kZSA9PT0gJ2Jhc2ljJ1xuICAgICAgICAgICAgPyAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5BRFZBTkNFRC5URVhUJ1xuICAgICAgICAgICAgOiAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5TSU1QTEUuVEVYVCcsXG4gICAgICAgIGFjdGlvbkNhbGxiYWNrOiAoKSA9PiB0aGlzLnRvZ2dsZVZpZXdNb2RlKCksXG4gICAgICAgIHNob3c6ICdhbHdheXMnLFxuICAgICAgICB0aXRsZUtleTpcbiAgICAgICAgICB0aGlzLnZpZXdNb2RlID09PSAnYmFzaWMnXG4gICAgICAgICAgICA/ICdPQ1hfU0VBUkNIX0hFQURFUi5UT0dHTEVfQlVUVE9OLkFEVkFOQ0VELkRFVEFJTCdcbiAgICAgICAgICAgIDogJ09DWF9TRUFSQ0hfSEVBREVSLlRPR0dMRV9CVVRUT04uU0lNUExFLkRFVEFJTCcsXG4gICAgICB9KVxuICAgIH1cbiAgICB0aGlzLmhlYWRlckFjdGlvbnMgPSBoZWFkZXJBY3Rpb25zLmNvbmNhdCh0aGlzLmFjdGlvbnMpXG4gIH1cblxuICBhZGRLZXlVcEV2ZW50TGlzdGVuZXIoKSB7XG4gICAgY29uc3QgaW5wdXRFbGVtZW50cyA9IHRoaXMuc2VhcmNoUGFyYW1ldGVyRmllbGRzPy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0JylcbiAgICBpbnB1dEVsZW1lbnRzLmZvckVhY2goKGlucHV0RWxlbWVudDogYW55KSA9PiB7XG4gICAgICBpZiAoIWlucHV0RWxlbWVudC5saXN0ZW5lckFkZGVkKSB7XG4gICAgICAgIGlucHV0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXl1cCcsIChldmVudDogYW55KSA9PiB0aGlzLm9uU2VhcmNoS2V5dXAoZXZlbnQpKVxuICAgICAgICBpbnB1dEVsZW1lbnQubGlzdGVuZXJBZGRlZCA9IHRydWVcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgb25TZWFyY2hLZXl1cChldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdFbnRlcicpIHtcbiAgICAgIHRoaXMub25TZWFyY2hDbGlja2VkKClcbiAgICB9XG4gIH1cblxuICBjb25maXJtU2VhcmNoQ29uZmlnKHNlYXJjaENvbmZpZzogU2VhcmNoQ29uZmlnSW5mbykge1xuICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkPy5lbWl0KHNlYXJjaENvbmZpZylcbiAgICB0aGlzLmNvbXBvbmVudFN0YXRlQ2hhbmdlZC5lbWl0KHtcbiAgICAgIHNlbGVjdGVkU2VhcmNoQ29uZmlnOiBzZWFyY2hDb25maWdcbiAgICB9KVxuICB9XG59XG4iLCI8b2N4LXBhZ2UtaGVhZGVyXG4gIFtoZWFkZXJdPVwiaGVhZGVyIHx8ICgnT0NYX1NFQVJDSF9IRUFERVIuSEVBREVSJyB8IHRyYW5zbGF0ZSlcIlxuICBbc3ViaGVhZGVyXT1cInN1YmhlYWRlclwiXG4gIFttYW51YWxCcmVhZGNydW1ic109XCJtYW51YWxCcmVhZGNydW1ic1wiXG4gIFthY3Rpb25zXT1cImhlYWRlckFjdGlvbnNcIlxuPlxuICA8bmctdGVtcGxhdGUgI2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnQ+XG4gICAgPG9jeC1zZWFyY2gtY29uZmlnIFtzZWFyY2hDb25maWdzXT1cInNlYXJjaENvbmZpZ3NcIiAoc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkKT1cImNvbmZpcm1TZWFyY2hDb25maWcoJGV2ZW50KVwiPlxuICAgIDwvb2N4LXNlYXJjaC1jb25maWc+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdFwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI2FkZGl0aW9uYWxUb29sYmFyQ29udGVudD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIl9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cImZsZXggcm93LWdhcC0zIGNvbHVtbi1nYXAtNiBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgPGRpdj5cbiAgICAgIDxkaXYgI3NlYXJjaFBhcmFtZXRlckZpZWxkcz5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGdhcC0yXCI+XG4gICAgICA8cC1idXR0b25cbiAgICAgICAgaWQ9XCJyZXNldEJ1dHRvblwiXG4gICAgICAgICpuZ0lmPVwicmVzZXR0ZWQub2JzZXJ2ZWRcIlxuICAgICAgICAob25DbGljayk9XCJvblJlc2V0Q2xpY2tlZCgpXCJcbiAgICAgICAgbGFiZWw9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuUkVTRVRfQlVUVE9OLlRFWFQnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgaWNvbj1cInBpIHBpLWVyYXNlclwiXG4gICAgICAgIHBUb29sdGlwPVwie3sgJ09DWF9TRUFSQ0hfSEVBREVSLlJFU0VUX0JVVFRPTi5ERVRBSUwnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgdG9vbHRpcEV2ZW50PVwiaG92ZXJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwicmVzZXRCdXR0b25EaXNhYmxlZFwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiJ09DWF9TRUFSQ0hfSEVBREVSLlJFU0VUX0JVVFRPTi5BUklBX0xBQkVMJyB8IHRyYW5zbGF0ZVwiXG4gICAgICA+XG4gICAgICA8L3AtYnV0dG9uPlxuXG4gICAgICA8cC1idXR0b25cbiAgICAgICAgaWQ9XCJzZWFyY2hCdXR0b25cIlxuICAgICAgICAob25DbGljayk9XCJvblNlYXJjaENsaWNrZWQoKVwiXG4gICAgICAgIGxhYmVsPVwie3sgJ09DWF9TRUFSQ0hfSEVBREVSLlNFQVJDSF9CVVRUT04uVEVYVCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBpY29uPVwicGkgcGktc2VhcmNoXCJcbiAgICAgICAgcFRvb2x0aXA9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuU0VBUkNIX0JVVFRPTi5ERVRBSUwnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgdG9vbHRpcEV2ZW50PVwiaG92ZXJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwic2VhcmNoQnV0dG9uRGlzYWJsZWRcIlxuICAgICAgICBbYXJpYUxhYmVsXT1cIidPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLkFSSUFfTEFCRUwnIHwgdHJhbnNsYXRlXCJcbiAgICAgID5cbiAgICAgIDwvcC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9vY3gtcGFnZS1oZWFkZXI+XG4iXX0=
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1oZWFkZXIvc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUVULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQUUsZUFBZSxFQUFhLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDL0UsT0FBTyxFQUFjLGFBQWEsRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBOzs7Ozs7Ozs7O0FBY2hEOzs7OztHQUtHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQzs7T0FFRztJQUNILElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtJQUNyQixDQUFDO0lBR0QsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFBO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxRQUE4QjtRQUN6QyxJQUFJLElBQUksQ0FBQyxRQUFR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LG04RUFpRUE7OzJGRHZCYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1CLGFBRWxCLEVBQUU7d0RBR0osTUFBTTtzQkFBZCxLQUFLO2dCQU1GLFFBQVE7c0JBRFgsS0FBSztnQkFPRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdGLFFBQVE7c0JBRFgsS0FBSztnQkFlRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBR0YsT0FBTztzQkFEVixLQUFLO2dCQVFHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLDJCQUEyQjtzQkFBcEMsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFFUCx3QkFBd0I7c0JBRHZCLFlBQVk7dUJBQUMsMEJBQTBCO2dCQU94Qyw0QkFBNEI7c0JBRDNCLFlBQVk7dUJBQUMsOEJBQThCO2dCQVdWLFNBQVM7c0JBQTFDLFlBQVk7dUJBQUMsa0JBQWtCO2dCQUN5QixtQkFBbUI7c0JBQTNFLGVBQWU7dUJBQUMsZUFBZSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFFbkIscUJBQXFCO3NCQUF4RCxTQUFTO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnLi4vcGFnZS1oZWFkZXIvcGFnZS1oZWFkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xOYW1lLCBGb3JtR3JvdXAsIEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgZGVib3VuY2VUaW1lLCBtYXAsIG9mLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZ2V0TG9jYXRpb24gfSBmcm9tICdAb25lY3gvYWNjZWxlcmF0b3InXG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoSGVhZGVyQ29tcG9uZW50U3RhdGUge1xuICBhY3RpdmVWaWV3TW9kZT86ICdiYXNpYycgfCAnYWR2YW5jZWQnXG4gIHNlbGVjdGVkU2VhcmNoQ29uZmlnPzogc3RyaW5nIHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaENvbmZpZ0RhdGEge1xuICBuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgZmllbGRWYWx1ZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1cbiAgZGlzcGxheWVkQ29sdW1uc0lkczogc3RyaW5nW11cbiAgdmlld01vZGU6ICdiYXNpYycgfCAnYWR2YW5jZWQnXG59XG5cbi8qKlxuICogVG8gdHJpZ2dlciB0aGUgc2VhcmNoIHdoZW4gRW50ZXIga2V5IGlzIHByZXNzZWQgaW5zaWRlIGEgc2VhcmNoIHBhcmFtZXRlciBmaWVsZCxcbiAqIGFuIEV2ZW50TGlzdGVuZXIgZm9yIGtleXVwIGVudGVyIGV2ZW50IGlzIGFkZGVkIGZvciBIVE1MIGVsZW1lbnRzIHdoaWNoIGhhdmUgYW4gaW5wdXQuXG4gKiBQbGVhc2UgYWRkIHRoZSBFdmVudExpc3RlbmVyIHlvdXJzZWxmIG1hbnVhbGx5LCBpZiB5b3Ugd2FudCB0byBoYXZlIHRoYXQgZnVuY3Rpb25hbGl0eSBmb3Igc29tZSBvdGhlciBlbGVtZW50c1xuICogd2hpY2ggZG8gbm90IGhhdmUgYW4gaW5wdXQgZWxlbWVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNlYXJjaC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBoZWFkZXIgPSAnJ1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlcGxhY2VkIGJ5IGhlYWRlclxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IGhlYWRsaW5lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZGVyXG4gIH1cbiAgc2V0IGhlYWRsaW5lKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmhlYWRlciA9IHZhbHVlXG4gIH1cbiAgQElucHV0KCkgc3ViaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgX3ZpZXdNb2RlOiAnYmFzaWMnIHwgJ2FkdmFuY2VkJyA9ICdiYXNpYydcbiAgQElucHV0KClcbiAgZ2V0IHZpZXdNb2RlKCk6ICdiYXNpYycgfCAnYWR2YW5jZWQnIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld01vZGVcbiAgfVxuICBzZXQgdmlld01vZGUodmlld01vZGU6ICdiYXNpYycgfCAnYWR2YW5jZWQnKSB7XG4gICAgaWYgKHRoaXMudmlld01vZGUgIT09IHZpZXdNb2RlKSB7XG4gICAgICB0aGlzLl92aWV3TW9kZSA9IHZpZXdNb2RlXG4gICAgICB0aGlzLnZpZXdNb2RlQ2hhbmdlZD8uZW1pdCh0aGlzLnZpZXdNb2RlKVxuICAgICAgdGhpcy5jb21wb25lbnRTdGF0ZUNoYW5nZWQuZW1pdCh7XG4gICAgICAgIGFjdGl2ZVZpZXdNb2RlOiB0aGlzLnZpZXdNb2RlLFxuICAgICAgfSlcbiAgICAgIHRoaXMudXBkYXRlSGVhZGVyQWN0aW9ucygpXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuYWRkS2V5VXBFdmVudExpc3RlbmVyKCkpXG4gICAgfVxuICB9XG4gIEBJbnB1dCgpIG1hbnVhbEJyZWFkY3J1bWJzID0gZmFsc2VcbiAgX2FjdGlvbnM6IEFjdGlvbltdID0gW11cbiAgQElucHV0KClcbiAgZ2V0IGFjdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnNcbiAgfVxuICBzZXQgYWN0aW9ucyh2YWx1ZSkge1xuICAgIHRoaXMuX2FjdGlvbnMgPSB2YWx1ZVxuICAgIHRoaXMudXBkYXRlSGVhZGVyQWN0aW9ucygpXG4gIH1cbiAgQElucHV0KCkgc2VhcmNoQ29uZmlnUGVybWlzc2lvbjogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIEBJbnB1dCgpIHNlYXJjaEJ1dHRvbkRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgcmVzZXRCdXR0b25EaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIHBhZ2VOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQgPSBnZXRMb2NhdGlvbigpLmFwcGxpY2F0aW9uUGF0aFxuXG4gIEBPdXRwdXQoKSBzZWFyY2hlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHJlc2V0dGVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgc2VsZWN0ZWRTZWFyY2hDb25maWdDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VhcmNoQ29uZmlnRGF0YSB8IHVuZGVmaW5lZD4gPSBuZXcgRXZlbnRFbWl0dGVyKClcbiAgQE91dHB1dCgpIHZpZXdNb2RlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPCdiYXNpYycgfCAnYWR2YW5jZWQnPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgY29tcG9uZW50U3RhdGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VhcmNoSGVhZGVyQ29tcG9uZW50U3RhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudCcpXG4gIGFkZGl0aW9uYWxUb29sYmFyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIGdldCBfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50KCk6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFkZGl0aW9uYWxUb29sYmFyQ29udGVudFxuICB9XG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkXG5cbiAgZ2V0IF9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0KCk6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcbiAgfVxuXG4gIGdldCBzZWFyY2hDb25maWdDaGFuZ2VPYnNlcnZlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZFNlYXJjaENvbmZpZ0NoYW5nZWQub2JzZXJ2ZWRcbiAgfVxuXG4gIEBDb250ZW50Q2hpbGQoRm9ybUdyb3VwRGlyZWN0aXZlKSBmb3JtR3JvdXA6IEZvcm1Hcm91cCB8IHVuZGVmaW5lZFxuICBAQ29udGVudENoaWxkcmVuKEZvcm1Db250cm9sTmFtZSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSB2aXNpYmxlRm9ybUNvbnRyb2xzITogUXVlcnlMaXN0PEZvcm1Db250cm9sTmFtZT5cblxuICBAVmlld0NoaWxkKCdzZWFyY2hQYXJhbWV0ZXJGaWVsZHMnKSBzZWFyY2hQYXJhbWV0ZXJGaWVsZHM6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWRcblxuICBoYXNBZHZhbmNlZCA9IGZhbHNlXG4gIGhlYWRlckFjdGlvbnM6IEFjdGlvbltdID0gW11cblxuICBmaWVsZFZhbHVlcyQ6IE9ic2VydmFibGU8eyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0+IHwgdW5kZWZpbmVkID0gb2Yoe30pXG4gIHNlYXJjaENvbmZpZ0NoYW5nZWRTbG90RW1pdHRlcjogRXZlbnRFbWl0dGVyPFNlYXJjaENvbmZpZ0RhdGEgfCB1bmRlZmluZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zZWFyY2hDb25maWdDaGFuZ2VkU2xvdEVtaXR0ZXIuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgIHRoaXMuY29tcG9uZW50U3RhdGVDaGFuZ2VkLmVtaXQoe1xuICAgICAgICBzZWxlY3RlZFNlYXJjaENvbmZpZzogY29uZmlnPy5uYW1lID8/IG51bGwsXG4gICAgICB9KVxuICAgICAgdGhpcy5zZWxlY3RlZFNlYXJjaENvbmZpZ0NoYW5nZWQuZW1pdChjb25maWcpXG4gICAgfSlcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtR3JvdXApIHtcbiAgICAgIHRoaXMuZmllbGRWYWx1ZXMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh7fSkpLFxuICAgICAgICB0aGlzLnZpc2libGVGb3JtQ29udHJvbHMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aChudWxsKSksXG4gICAgICBdKS5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgICAgbWFwKChbdmFsdWVzLCBfXSkgPT5cbiAgICAgICAgICBPYmplY3QuZW50cmllcyh2YWx1ZXMgPz8ge30pLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIFtrZXksIHZhbHVlXSkgPT4gKHtcbiAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICBba2V5XTogdGhpcy5pc1Zpc2libGUoa2V5KSA/IHZhbHVlIHx8IHVuZGVmaW5lZCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAge31cbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5hZGRLZXlVcEV2ZW50TGlzdGVuZXIoKVxuICB9XG5cbiAgdG9nZ2xlVmlld01vZGUoKSB7XG4gICAgdGhpcy52aWV3TW9kZSA9IHRoaXMudmlld01vZGUgPT09ICdiYXNpYycgPyAnYWR2YW5jZWQnIDogJ2Jhc2ljJ1xuICB9XG5cbiAgb25SZXNldENsaWNrZWQoKSB7XG4gICAgdGhpcy5yZXNldHRlZC5lbWl0KClcbiAgfVxuXG4gIG9uU2VhcmNoQ2xpY2tlZCgpIHtcbiAgICB0aGlzLnNlYXJjaGVkLmVtaXQoKVxuICB9XG5cbiAgdXBkYXRlSGVhZGVyQWN0aW9ucygpIHtcbiAgICBjb25zdCBoZWFkZXJBY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG4gICAgaWYgKHRoaXMuaGFzQWR2YW5jZWQpIHtcbiAgICAgIGhlYWRlckFjdGlvbnMucHVzaCh7XG4gICAgICAgIGlkOiAnc2ltcGxlQWR2YW5jZWRCdXR0b24nLFxuICAgICAgICBsYWJlbEtleTpcbiAgICAgICAgICB0aGlzLnZpZXdNb2RlID09PSAnYmFzaWMnXG4gICAgICAgICAgICA/ICdPQ1hfU0VBUkNIX0hFQURFUi5UT0dHTEVfQlVUVE9OLkFEVkFOQ0VELlRFWFQnXG4gICAgICAgICAgICA6ICdPQ1hfU0VBUkNIX0hFQURFUi5UT0dHTEVfQlVUVE9OLlNJTVBMRS5URVhUJyxcbiAgICAgICAgYWN0aW9uQ2FsbGJhY2s6ICgpID0+IHRoaXMudG9nZ2xlVmlld01vZGUoKSxcbiAgICAgICAgc2hvdzogJ2Fsd2F5cycsXG4gICAgICAgIHRpdGxlS2V5OlxuICAgICAgICAgIHRoaXMudmlld01vZGUgPT09ICdiYXNpYydcbiAgICAgICAgICAgID8gJ09DWF9TRUFSQ0hfSEVBREVSLlRPR0dMRV9CVVRUT04uQURWQU5DRUQuREVUQUlMJ1xuICAgICAgICAgICAgOiAnT0NYX1NFQVJDSF9IRUFERVIuVE9HR0xFX0JVVFRPTi5TSU1QTEUuREVUQUlMJyxcbiAgICAgIH0pXG4gICAgfVxuICAgIHRoaXMuaGVhZGVyQWN0aW9ucyA9IGhlYWRlckFjdGlvbnMuY29uY2F0KHRoaXMuYWN0aW9ucylcbiAgfVxuXG4gIGFkZEtleVVwRXZlbnRMaXN0ZW5lcigpIHtcbiAgICBjb25zdCBpbnB1dEVsZW1lbnRzID0gdGhpcy5zZWFyY2hQYXJhbWV0ZXJGaWVsZHM/Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnaW5wdXQnKVxuICAgIGlucHV0RWxlbWVudHMuZm9yRWFjaCgoaW5wdXRFbGVtZW50OiBhbnkpID0+IHtcbiAgICAgIGlmICghaW5wdXRFbGVtZW50Lmxpc3RlbmVyQWRkZWQpIHtcbiAgICAgICAgaW5wdXRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgKGV2ZW50OiBhbnkpID0+IHRoaXMub25TZWFyY2hLZXl1cChldmVudCkpXG4gICAgICAgIGlucHV0RWxlbWVudC5saXN0ZW5lckFkZGVkID0gdHJ1ZVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBvblNlYXJjaEtleXVwKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0VudGVyJykge1xuICAgICAgdGhpcy5vblNlYXJjaENsaWNrZWQoKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNWaXNpYmxlKGNvbnRyb2w6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnZpc2libGVGb3JtQ29udHJvbHMuc29tZShcbiAgICAgIChmb3JtQ29udHJvbCkgPT4gZm9ybUNvbnRyb2wubmFtZSAhPT0gbnVsbCAmJiBTdHJpbmcoZm9ybUNvbnRyb2wubmFtZSkgPT09IGNvbnRyb2xcbiAgICApXG4gIH1cbn1cbiIsIjxvY3gtcGFnZS1oZWFkZXJcbiAgW2hlYWRlcl09XCJoZWFkZXIgfHwgKCdPQ1hfU0VBUkNIX0hFQURFUi5IRUFERVInIHwgdHJhbnNsYXRlKVwiXG4gIFtzdWJoZWFkZXJdPVwic3ViaGVhZGVyXCJcbiAgW21hbnVhbEJyZWFkY3J1bWJzXT1cIm1hbnVhbEJyZWFkY3J1bWJzXCJcbiAgW2FjdGlvbnNdPVwiaGVhZGVyQWN0aW9uc1wiXG4+XG4gIDxuZy10ZW1wbGF0ZSAjYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VhcmNoQ29uZmlnQ2hhbmdlT2JzZXJ2ZWQgJiYgcGFnZU5hbWVcIj5cbiAgICAgIDxvY3gtc2xvdFxuICAgICAgICAqb2N4SWZQZXJtaXNzaW9uPVwic2VhcmNoQ29uZmlnUGVybWlzc2lvblwiXG4gICAgICAgIG5hbWU9XCJvbmVjeC1zaGVsbC1zZWFyY2gtY29uZmlnXCJcbiAgICAgICAgW2lucHV0c109XCJ7IHBhZ2VOYW1lOiBwYWdlTmFtZSwgY3VycmVudEZpZWxkVmFsdWVzOiBmaWVsZFZhbHVlcyQgfCBhc3luYywgdmlld01vZGU6IHZpZXdNb2RlIH1cIlxuICAgICAgICBbb3V0cHV0c109XCJ7IHNlYXJjaENvbmZpZ1NlbGVjdGVkOiBzZWFyY2hDb25maWdDaGFuZ2VkU2xvdEVtaXR0ZXIgfVwiXG4gICAgICA+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiMThyZW1cIiBoZWlnaHQ9XCIzcmVtXCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9vY3gtc2xvdD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIl9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0XCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIl9hZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSAjYWRkaXRpb25hbFRvb2xiYXJDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJfYWRkaXRpb25hbFRvb2xiYXJDb250ZW50XCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiX2FkZGl0aW9uYWxUb29sYmFyQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuICA8ZGl2IGNsYXNzPVwiZmxleCByb3ctZ2FwLTMgY29sdW1uLWdhcC02IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2PlxuICAgICAgPGRpdiAjc2VhcmNoUGFyYW1ldGVyRmllbGRzPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTJcIj5cbiAgICAgIDxwLWJ1dHRvblxuICAgICAgICBpZD1cInJlc2V0QnV0dG9uXCJcbiAgICAgICAgKm5nSWY9XCJyZXNldHRlZC5vYnNlcnZlZFwiXG4gICAgICAgIChvbkNsaWNrKT1cIm9uUmVzZXRDbGlja2VkKClcIlxuICAgICAgICBsYWJlbD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5SRVNFVF9CVVRUT04uVEVYVCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBpY29uPVwicGkgcGktZXJhc2VyXCJcbiAgICAgICAgcFRvb2x0aXA9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuUkVTRVRfQlVUVE9OLkRFVEFJTCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJyZXNldEJ1dHRvbkRpc2FibGVkXCJcbiAgICAgICAgW2FyaWFMYWJlbF09XCInT0NYX1NFQVJDSF9IRUFERVIuUkVTRVRfQlVUVE9OLkFSSUFfTEFCRUwnIHwgdHJhbnNsYXRlXCJcbiAgICAgID5cbiAgICAgIDwvcC1idXR0b24+XG5cbiAgICAgIDxwLWJ1dHRvblxuICAgICAgICBpZD1cInNlYXJjaEJ1dHRvblwiXG4gICAgICAgIChvbkNsaWNrKT1cIm9uU2VhcmNoQ2xpY2tlZCgpXCJcbiAgICAgICAgbGFiZWw9XCJ7eyAnT0NYX1NFQVJDSF9IRUFERVIuU0VBUkNIX0JVVFRPTi5URVhUJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGljb249XCJwaSBwaS1zZWFyY2hcIlxuICAgICAgICBwVG9vbHRpcD1cInt7ICdPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLkRFVEFJTCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJzZWFyY2hCdXR0b25EaXNhYmxlZCB8fCBmb3JtR3JvdXA/LmludmFsaWRcIlxuICAgICAgICBbYXJpYUxhYmVsXT1cIidPQ1hfU0VBUkNIX0hFQURFUi5TRUFSQ0hfQlVUVE9OLkFSSUFfTEFCRUwnIHwgdHJhbnNsYXRlXCJcbiAgICAgID5cbiAgICAgIDwvcC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9vY3gtcGFnZS1oZWFkZXI+XG4iXX0=
|
|
@@ -19,6 +19,9 @@ export class IfPermissionDirective {
|
|
|
19
19
|
set ocxIfNotPermissionPermissions(value) {
|
|
20
20
|
this.ocxIfPermissionPermissions = value;
|
|
21
21
|
}
|
|
22
|
+
set ocxIfNotPermissionElseTemplate(value) {
|
|
23
|
+
this.ocxIfPermissionElseTemplate = value;
|
|
24
|
+
}
|
|
22
25
|
constructor(renderer, el, viewContainer, hasPermissionChecker, templateRef, userService) {
|
|
23
26
|
this.renderer = renderer;
|
|
24
27
|
this.el = el;
|
|
@@ -35,12 +38,17 @@ export class IfPermissionDirective {
|
|
|
35
38
|
}
|
|
36
39
|
ngOnInit() {
|
|
37
40
|
if (this.permission) {
|
|
38
|
-
if (this.negate === this.hasPermission(this.permission)) {
|
|
39
|
-
if (this.
|
|
40
|
-
this.
|
|
41
|
+
if (this.negate === this.hasPermission(Array.isArray(this.permission) ? this.permission : [this.permission])) {
|
|
42
|
+
if (this.ocxIfPermissionElseTemplate) {
|
|
43
|
+
this.viewContainer.createEmbeddedView(this.ocxIfPermissionElseTemplate);
|
|
41
44
|
}
|
|
42
45
|
else {
|
|
43
|
-
this.
|
|
46
|
+
if (this.onMissingPermission === 'disable') {
|
|
47
|
+
this.renderer.setAttribute(this.el.nativeElement, 'disabled', 'disabled');
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.viewContainer.clear();
|
|
51
|
+
}
|
|
44
52
|
}
|
|
45
53
|
}
|
|
46
54
|
else {
|
|
@@ -52,16 +60,16 @@ export class IfPermissionDirective {
|
|
|
52
60
|
}
|
|
53
61
|
hasPermission(permission) {
|
|
54
62
|
if (this.ocxIfPermissionPermissions) {
|
|
55
|
-
const result = this.ocxIfPermissionPermissions
|
|
63
|
+
const result = permission.every((p) => this.ocxIfPermissionPermissions?.includes(p));
|
|
56
64
|
if (!result) {
|
|
57
65
|
console.log('👮♀️ No permission in overwrites for: `', permission);
|
|
58
66
|
}
|
|
59
67
|
return result;
|
|
60
68
|
}
|
|
61
|
-
return this.permissionChecker?.hasPermission(
|
|
69
|
+
return permission.every((p) => this.permissionChecker?.hasPermission(p));
|
|
62
70
|
}
|
|
63
71
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: IfPermissionDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: HAS_PERMISSION_CHECKER, optional: true }, { token: i0.TemplateRef, optional: true }, { token: i1.UserService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
64
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: IfPermissionDirective, selector: "[ocxIfPermission], [ocxIfNotPermission]", inputs: { permission: ["ocxIfPermission", "permission"], notPermission: ["ocxIfNotPermission", "notPermission"], onMissingPermission: "onMissingPermission", ocxIfPermissionPermissions: "ocxIfPermissionPermissions", ocxIfNotPermissionPermissions: "ocxIfNotPermissionPermissions" }, ngImport: i0 }); }
|
|
72
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: IfPermissionDirective, selector: "[ocxIfPermission], [ocxIfNotPermission]", inputs: { permission: ["ocxIfPermission", "permission"], notPermission: ["ocxIfNotPermission", "notPermission"], onMissingPermission: "onMissingPermission", ocxIfPermissionPermissions: "ocxIfPermissionPermissions", ocxIfNotPermissionPermissions: "ocxIfNotPermissionPermissions", ocxIfPermissionElseTemplate: "ocxIfPermissionElseTemplate", ocxIfNotPermissionElseTemplate: "ocxIfNotPermissionElseTemplate" }, ngImport: i0 }); }
|
|
65
73
|
}
|
|
66
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: IfPermissionDirective, decorators: [{
|
|
67
75
|
type: Directive,
|
|
@@ -87,5 +95,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
87
95
|
type: Input
|
|
88
96
|
}], ocxIfNotPermissionPermissions: [{
|
|
89
97
|
type: Input
|
|
98
|
+
}], ocxIfPermissionElseTemplate: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], ocxIfNotPermissionElseTemplate: [{
|
|
101
|
+
type: Input
|
|
90
102
|
}] } });
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWYtcGVybWlzc2lvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9kaXJlY3RpdmVzL2lmLXBlcm1pc3Npb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUVMLFFBQVEsRUFDUixTQUFTLEVBQ1QsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7OztBQU1sRTs7R0FFRztBQUNILE1BQU0sT0FBTyw0QkFBNEI7SUFDdkMsYUFBYSxDQUFDLGNBQXNCO1FBQ2xDLE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQXVCLGVBQWUsQ0FBQyxDQUFBO0FBRy9GLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsSUFBaUMsYUFBYSxDQUFDLEtBQW9DO1FBQ2pGLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLENBQUM7SUFLRCxJQUNJLDZCQUE2QixDQUFDLEtBQTJCO1FBQzNELElBQUksQ0FBQywwQkFBMEIsR0FBRyxLQUFLLENBQUE7SUFDekMsQ0FBQztJQUlELElBQ0ksOEJBQThCLENBQUMsS0FBbUM7UUFDcEUsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEtBQUssQ0FBQTtJQUMxQyxDQUFDO0lBS0QsWUFDVSxRQUFtQixFQUNuQixFQUFjLEVBQ2QsYUFBK0IsRUFHL0Isb0JBQTJDLEVBQy9CLFdBQThCLEVBQzlCLFdBQXlCO1FBUHJDLGFBQVEsR0FBUixRQUFRLENB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RUYsNkJBQTZCO3NCQURoQyxLQUFLO2dCQU1OLDJCQUEyQjtzQkFEMUIsS0FBSztnQkFHRiw4QkFBOEI7c0JBRGpDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5cbmV4cG9ydCBpbnRlcmZhY2UgSGFzUGVybWlzc2lvbkNoZWNrZXIge1xuICBoYXNQZXJtaXNzaW9uKHBlcm1pc3Npb25LZXk6IHN0cmluZyk6IGJvb2xlYW5cbn1cblxuLyoqXG4gKiBUaGlzIGNoZWNrZXIgYWx3YXlzIHJldHVybnMgdHJ1ZSwgYmFzaWNhbGx5IGRpc2FibGluZyB0aGUgcGVybWlzc2lvbiBzeXN0ZW0gb24gdGhlIFVJIHNpZGVcbiAqL1xuZXhwb3J0IGNsYXNzIEFsd2F5c0dyYW50UGVybWlzc2lvbkNoZWNrZXIgaW1wbGVtZW50cyBIYXNQZXJtaXNzaW9uQ2hlY2tlciB7XG4gIGhhc1Blcm1pc3Npb24oX3Blcm1pc3Npb25LZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEhBU19QRVJNSVNTSU9OX0NIRUNLRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48SGFzUGVybWlzc2lvbkNoZWNrZXI+KCdoYXNQZXJtaXNzaW9uJylcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW29jeElmUGVybWlzc2lvbl0sIFtvY3hJZk5vdFBlcm1pc3Npb25dJyB9KVxuZXhwb3J0IGNsYXNzIElmUGVybWlzc2lvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgnb2N4SWZQZXJtaXNzaW9uJykgcGVybWlzc2lvbjogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWRcbiAgQElucHV0KCdvY3hJZk5vdFBlcm1pc3Npb24nKSBzZXQgbm90UGVybWlzc2lvbih2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLnBlcm1pc3Npb24gPSB2YWx1ZVxuICAgIHRoaXMubmVnYXRlID0gdHJ1ZVxuICB9XG5cbiAgQElucHV0KCkgb25NaXNzaW5nUGVybWlzc2lvbjogJ2hpZGUnIHwgJ2Rpc2FibGUnID0gJ2hpZGUnXG5cbiAgQElucHV0KCkgb2N4SWZQZXJtaXNzaW9uUGVybWlzc2lvbnM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkXG4gIEBJbnB1dCgpXG4gIHNldCBvY3hJZk5vdFBlcm1pc3Npb25QZXJtaXNzaW9ucyh2YWx1ZTogc3RyaW5nW10gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLm9jeElmUGVybWlzc2lvblBlcm1pc3Npb25zID0gdmFsdWVcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG9jeElmUGVybWlzc2lvbkVsc2VUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuICBASW5wdXQoKVxuICBzZXQgb2N4SWZOb3RQZXJtaXNzaW9uRWxzZVRlbXBsYXRlKHZhbHVlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5vY3hJZlBlcm1pc3Npb25FbHNlVGVtcGxhdGUgPSB2YWx1ZVxuICB9XG5cbiAgcHJpdmF0ZSBwZXJtaXNzaW9uQ2hlY2tlcjogSGFzUGVybWlzc2lvbkNoZWNrZXIgfCB1bmRlZmluZWRcbiAgbmVnYXRlID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KEhBU19QRVJNSVNTSU9OX0NIRUNLRVIpXG4gICAgcHJpdmF0ZSBoYXNQZXJtaXNzaW9uQ2hlY2tlcj86IEhhc1Blcm1pc3Npb25DaGVja2VyLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgdGVtcGxhdGVSZWY/OiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgdXNlclNlcnZpY2U/OiBVc2VyU2VydmljZVxuICApIHtcbiAgICBpZiAoIShoYXNQZXJtaXNzaW9uQ2hlY2tlciB8fCB1c2VyU2VydmljZSkpIHtcbiAgICAgIHRocm93ICdJZlBlcm1pc3Npb24gcmVxdWlyZXMgVXNlclNlcnZpY2Ugb3IgSGFzUGVybWlzc2lvbkNoZWNrZXIgdG8gYmUgcHJvdmlkZWQhJ1xuICAgIH1cblxuICAgIHRoaXMucGVybWlzc2lvbkNoZWNrZXIgPSBoYXNQZXJtaXNzaW9uQ2hlY2tlciA/PyB1c2VyU2VydmljZVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMucGVybWlzc2lvbikge1xuICAgICAgaWYgKHRoaXMubmVnYXRlID09PSB0aGlzLmhhc1Blcm1pc3Npb24oQXJyYXkuaXNBcnJheSh0aGlzLnBlcm1pc3Npb24pID8gdGhpcy5wZXJtaXNzaW9uIDogW3RoaXMucGVybWlzc2lvbl0pKSB7XG4gICAgICAgIGlmICh0aGlzLm9jeElmUGVybWlzc2lvbkVsc2VUZW1wbGF0ZSkge1xuICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5vY3hJZlBlcm1pc3Npb25FbHNlVGVtcGxhdGUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHRoaXMub25NaXNzaW5nUGVybWlzc2lvbiA9PT0gJ2Rpc2FibGUnKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcsICdkaXNhYmxlZCcpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy50ZW1wbGF0ZVJlZikge1xuICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZilcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhhc1Blcm1pc3Npb24ocGVybWlzc2lvbjogc3RyaW5nW10pIHtcbiAgICBpZiAodGhpcy5vY3hJZlBlcm1pc3Npb25QZXJtaXNzaW9ucykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gcGVybWlzc2lvbi5ldmVyeSgocCkgPT4gdGhpcy5vY3hJZlBlcm1pc3Npb25QZXJtaXNzaW9ucz8uaW5jbHVkZXMocCkpXG4gICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICBjb25zb2xlLmxvZygn8J+RruKAjeKZgO+4jyBObyBwZXJtaXNzaW9uIGluIG92ZXJ3cml0ZXMgZm9yOiBgJywgcGVybWlzc2lvbilcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9XG4gICAgcmV0dXJuIHBlcm1pc3Npb24uZXZlcnkoKHApID0+IHRoaXMucGVybWlzc2lvbkNoZWNrZXI/Lmhhc1Blcm1pc3Npb24ocCkpXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { map } from 'rxjs';
|
|
2
|
+
import { AsyncTranslateLoader } from './async-translate-loader.utils';
|
|
3
|
+
import { TranslateCombinedLoader } from './translate.combined.loader';
|
|
4
|
+
import { createRemoteComponentTranslateLoader } from './create-remote-component-translate-loader.utils';
|
|
5
|
+
import { CachingTranslateLoader } from './caching-translate-loader.utils';
|
|
6
|
+
import { Location } from '@angular/common';
|
|
7
|
+
export function createRemoteComponentAndMfeTranslateLoader(httpClient, baseUrl, translationCacheService, appStateService) {
|
|
8
|
+
return new AsyncTranslateLoader(appStateService.currentMfe$.pipe(map((currentMfe) => {
|
|
9
|
+
return new TranslateCombinedLoader(createRemoteComponentTranslateLoader(httpClient, baseUrl, translationCacheService), new CachingTranslateLoader(translationCacheService, httpClient, Location.joinWithSlash(currentMfe.remoteBaseUrl, 'assets/i18n/'), '.json'));
|
|
10
|
+
})));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXJlbW90ZS1jb21wb25lbnQtYW5kLW1mZS10cmFuc2xhdGUtbG9hZGVyLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvdXRpbHMvY3JlYXRlLXJlbW90ZS1jb21wb25lbnQtYW5kLW1mZS10cmFuc2xhdGUtbG9hZGVyLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBaUIsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBR3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3JFLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGtEQUFrRCxDQUFBO0FBQ3ZHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUUxQyxNQUFNLFVBQVUsMENBQTBDLENBQ3hELFVBQXNCLEVBQ3RCLE9BQThCLEVBQzlCLHVCQUFnRCxFQUNoRCxlQUFnQztJQUVoQyxPQUFPLElBQUksb0JBQW9CLENBQzdCLGVBQWUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtRQUNqQixPQUFPLElBQUksdUJBQXVCLENBQ2hDLG9DQUFvQyxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsdUJBQXVCLENBQUMsRUFDbEYsSUFBSSxzQkFBc0IsQ0FDeEIsdUJBQXVCLEVBQ3ZCLFVBQVUsRUFDVixRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLEVBQ2hFLE9BQU8sQ0FDUixDQUNGLENBQUE7SUFDSCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgbWFwIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFRyYW5zbGF0aW9uQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdHJhbnNsYXRpb24tY2FjaGUuc2VydmljZSdcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcbmltcG9ydCB7IEFzeW5jVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnLi9hc3luYy10cmFuc2xhdGUtbG9hZGVyLnV0aWxzJ1xuaW1wb3J0IHsgVHJhbnNsYXRlQ29tYmluZWRMb2FkZXIgfSBmcm9tICcuL3RyYW5zbGF0ZS5jb21iaW5lZC5sb2FkZXInXG5pbXBvcnQgeyBjcmVhdGVSZW1vdGVDb21wb25lbnRUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICcuL2NyZWF0ZS1yZW1vdGUtY29tcG9uZW50LXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMnXG5pbXBvcnQgeyBDYWNoaW5nVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnLi9jYWNoaW5nLXRyYW5zbGF0ZS1sb2FkZXIudXRpbHMnXG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVJlbW90ZUNvbXBvbmVudEFuZE1mZVRyYW5zbGF0ZUxvYWRlcihcbiAgaHR0cENsaWVudDogSHR0cENsaWVudCxcbiAgYmFzZVVybDogUmVwbGF5U3ViamVjdDxzdHJpbmc+LFxuICB0cmFuc2xhdGlvbkNhY2hlU2VydmljZTogVHJhbnNsYXRpb25DYWNoZVNlcnZpY2UsXG4gIGFwcFN0YXRlU2VydmljZTogQXBwU3RhdGVTZXJ2aWNlXG4pIHtcbiAgcmV0dXJuIG5ldyBBc3luY1RyYW5zbGF0ZUxvYWRlcihcbiAgICBhcHBTdGF0ZVNlcnZpY2UuY3VycmVudE1mZSQucGlwZShcbiAgICAgIG1hcCgoY3VycmVudE1mZSkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFRyYW5zbGF0ZUNvbWJpbmVkTG9hZGVyKFxuICAgICAgICAgIGNyZWF0ZVJlbW90ZUNvbXBvbmVudFRyYW5zbGF0ZUxvYWRlcihodHRwQ2xpZW50LCBiYXNlVXJsLCB0cmFuc2xhdGlvbkNhY2hlU2VydmljZSksXG4gICAgICAgICAgbmV3IENhY2hpbmdUcmFuc2xhdGVMb2FkZXIoXG4gICAgICAgICAgICB0cmFuc2xhdGlvbkNhY2hlU2VydmljZSxcbiAgICAgICAgICAgIGh0dHBDbGllbnQsXG4gICAgICAgICAgICBMb2NhdGlvbi5qb2luV2l0aFNsYXNoKGN1cnJlbnRNZmUucmVtb3RlQmFzZVVybCwgJ2Fzc2V0cy9pMThuLycpLFxuICAgICAgICAgICAgJy5qc29uJ1xuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgfSlcbiAgICApXG4gIClcbn1cbiJdfQ==
|
|
@@ -11,9 +11,9 @@ export * from './group-by-count-diagram.harness';
|
|
|
11
11
|
export * from './interactive-data-view.harness';
|
|
12
12
|
export * from './more-actions-menu-button.harness';
|
|
13
13
|
export * from './page-header.harness';
|
|
14
|
-
export * from './
|
|
14
|
+
export * from './slot.harness';
|
|
15
15
|
export * from './search-header.harness';
|
|
16
16
|
export * from '@angular/cdk/testing';
|
|
17
17
|
export * from '@angular/cdk/testing/testbed';
|
|
18
18
|
export * from '@onecx/angular-testing';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3IvdGVzdGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsd0NBQXdDLENBQUE7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQTtBQUMvQyxjQUFjLDBCQUEwQixDQUFBO0FBQ3hDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQTtBQUNuQyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLGtDQUFrQyxDQUFBO0FBQ2hELGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyxvQ0FBb0MsQ0FBQTtBQUNsRCxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyx5QkFBeUIsQ0FBQTtBQUV2QyxjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29sdW1uLWdyb3VwLXNlbGVjdGlvbi5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9jdXN0b20tZ3JvdXAtY29sdW1uLXNlbGVjdG9yLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtbGF5b3V0LXNlbGVjdGlvbi5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWxpc3QtZ3JpZC5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLXRhYmxlLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtdmlldy5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kZWZhdWx0LWdyaWQtaXRlbS5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kZWZhdWx0LWxpc3QtaXRlbS5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9kaWFncmFtLmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL2dyb3VwLWJ5LWNvdW50LWRpYWdyYW0uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJhY3RpdmUtZGF0YS12aWV3Lmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL21vcmUtYWN0aW9ucy1tZW51LWJ1dHRvbi5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlLWhlYWRlci5oYXJuZXNzJ1xuZXhwb3J0ICogZnJvbSAnLi9zbG90Lmhhcm5lc3MnXG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC1oZWFkZXIuaGFybmVzcydcblxuZXhwb3J0ICogZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5leHBvcnQgKiBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZy90ZXN0YmVkJ1xuZXhwb3J0ICogZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcbiJdfQ==
|
|
@@ -4,16 +4,18 @@ import { PDropdownHarness } from '@onecx/angular-testing';
|
|
|
4
4
|
import { CustomGroupColumnSelectorHarness } from '.';
|
|
5
5
|
import { DataLayoutSelectionHarness } from './data-layout-selection.harness';
|
|
6
6
|
import { DataViewHarness } from './data-view.harness';
|
|
7
|
+
import { SlotHarness } from './slot.harness';
|
|
7
8
|
export class InteractiveDataViewHarness extends ContentContainerComponentHarness {
|
|
8
9
|
constructor() {
|
|
9
10
|
super(...arguments);
|
|
10
11
|
this.getDataLayoutSelection = this.locatorFor(DataLayoutSelectionHarness);
|
|
11
12
|
this.getColumnGroupSelectionDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'columnGroupSelectionDropdown' }));
|
|
12
|
-
this.getCustomGroupColumnSelector = this.
|
|
13
|
+
this.getCustomGroupColumnSelector = this.locatorForOptional(CustomGroupColumnSelectorHarness);
|
|
14
|
+
this.getCustomGroupColumnSelectorSlot = this.locatorForOptional(SlotHarness);
|
|
13
15
|
this.getDataListGridSortingDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'dataListGridSortingDropdown' }));
|
|
14
16
|
this.getDataListGridSortingButton = this.locatorForOptional(PButtonHarness.with({ id: 'dataListGridSortingButton' }));
|
|
15
17
|
this.getDataView = this.locatorFor(DataViewHarness);
|
|
16
18
|
}
|
|
17
19
|
static { this.hostSelector = 'ocx-interactive-data-view'; }
|
|
18
20
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtZGF0YS12aWV3Lmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3IvdGVzdGluZy9pbnRlcmFjdGl2ZS1kYXRhLXZpZXcuaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDekQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sR0FBRyxDQUFBO0FBQ3BELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFNUMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdDQUFnQztJQUFoRjs7UUFHRSwyQkFBc0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFDcEUsb0NBQStCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUN2RCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsOEJBQThCLEVBQUUsQ0FBQyxDQUM5RCxDQUFBO1FBQ0QsaUNBQTRCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGdDQUFnQyxDQUFDLENBQUE7UUFDeEYscUNBQWdDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ3ZFLG1DQUE4QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDdEgsaUNBQTRCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDaEgsZ0JBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQ2hELENBQUM7YUFYUSxpQkFBWSxHQUFHLDJCQUEyQixBQUE5QixDQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDb250YWluZXJDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5pbXBvcnQgeyBQQnV0dG9uSGFybmVzcyB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLXRlc3RpbmcnXG5pbXBvcnQgeyBQRHJvcGRvd25IYXJuZXNzIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcbmltcG9ydCB7IEN1c3RvbUdyb3VwQ29sdW1uU2VsZWN0b3JIYXJuZXNzIH0gZnJvbSAnLidcbmltcG9ydCB7IERhdGFMYXlvdXRTZWxlY3Rpb25IYXJuZXNzIH0gZnJvbSAnLi9kYXRhLWxheW91dC1zZWxlY3Rpb24uaGFybmVzcydcbmltcG9ydCB7IERhdGFWaWV3SGFybmVzcyB9IGZyb20gJy4vZGF0YS12aWV3Lmhhcm5lc3MnXG5pbXBvcnQgeyBTbG90SGFybmVzcyB9IGZyb20gJy4vc2xvdC5oYXJuZXNzJ1xuXG5leHBvcnQgY2xhc3MgSW50ZXJhY3RpdmVEYXRhVmlld0hhcm5lc3MgZXh0ZW5kcyBDb250ZW50Q29udGFpbmVyQ29tcG9uZW50SGFybmVzcyB7XG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnb2N4LWludGVyYWN0aXZlLWRhdGEtdmlldydcblxuICBnZXREYXRhTGF5b3V0U2VsZWN0aW9uID0gdGhpcy5sb2NhdG9yRm9yKERhdGFMYXlvdXRTZWxlY3Rpb25IYXJuZXNzKVxuICBnZXRDb2x1bW5Hcm91cFNlbGVjdGlvbkRyb3Bkb3duID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoXG4gICAgUERyb3Bkb3duSGFybmVzcy53aXRoKHsgaWQ6ICdjb2x1bW5Hcm91cFNlbGVjdGlvbkRyb3Bkb3duJyB9KVxuICApXG4gIGdldEN1c3RvbUdyb3VwQ29sdW1uU2VsZWN0b3IgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChDdXN0b21Hcm91cENvbHVtblNlbGVjdG9ySGFybmVzcylcbiAgZ2V0Q3VzdG9tR3JvdXBDb2x1bW5TZWxlY3RvclNsb3QgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChTbG90SGFybmVzcylcbiAgZ2V0RGF0YUxpc3RHcmlkU29ydGluZ0Ryb3Bkb3duID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoUERyb3Bkb3duSGFybmVzcy53aXRoKHsgaWQ6ICdkYXRhTGlzdEdyaWRTb3J0aW5nRHJvcGRvd24nIH0pKVxuICBnZXREYXRhTGlzdEdyaWRTb3J0aW5nQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoUEJ1dHRvbkhhcm5lc3Mud2l0aCh7IGlkOiAnZGF0YUxpc3RHcmlkU29ydGluZ0J1dHRvbicgfSkpXG4gIGdldERhdGFWaWV3ID0gdGhpcy5sb2NhdG9yRm9yKERhdGFWaWV3SGFybmVzcylcbn1cbiJdfQ==
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { ComponentHarness } from '@angular/cdk/testing';
|
|
2
2
|
import { PButtonHarness } from '@onecx/angular-testing';
|
|
3
3
|
import { PageHeaderHarness } from './page-header.harness';
|
|
4
|
-
import { SearchConfigHarness } from './search-config.harness';
|
|
5
4
|
import { MoreActionsMenuButtonHarness } from './more-actions-menu-button.harness';
|
|
6
5
|
export class SearchHeaderHarness extends ComponentHarness {
|
|
7
6
|
constructor() {
|
|
8
7
|
super(...arguments);
|
|
9
8
|
this.getPageHeader = this.locatorFor(PageHeaderHarness);
|
|
10
|
-
this.getSearchConfig = this.locatorFor(SearchConfigHarness);
|
|
11
9
|
this.getSearchButton = this.locatorFor(PButtonHarness.with({
|
|
12
10
|
id: 'searchButton',
|
|
13
11
|
}));
|
|
@@ -35,4 +33,4 @@ export class SearchHeaderHarness extends ComponentHarness {
|
|
|
35
33
|
}
|
|
36
34
|
}
|
|
37
35
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhlYWRlci5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3Rlc3Rpbmcvc2VhcmNoLWhlYWRlci5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQUVqRixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZ0JBQWdCO0lBQXpEOztRQUdFLGtCQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ2xELG9CQUFlLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FDL0IsY0FBYyxDQUFDLElBQUksQ0FBQztZQUNsQixFQUFFLEVBQUUsY0FBYztTQUNuQixDQUFDLENBQ0gsQ0FBQTtRQUVELG1CQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FDOUIsY0FBYyxDQUFDLElBQUksQ0FBQztZQUNsQixFQUFFLEVBQUUsYUFBYTtTQUNsQixDQUFDLENBQ0gsQ0FBQTtRQUVELDRCQUF1QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FDL0MsY0FBYyxDQUFDLElBQUksQ0FBQztZQUNsQixFQUFFLEVBQUUsc0JBQXNCO1NBQzNCLENBQUMsQ0FDSCxDQUFBO1FBRUQsNkJBQXdCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLDRCQUE0QixDQUFDLENBQUE7SUFpQmxGLENBQUM7YUF0Q1EsaUJBQVksR0FBRyxtQkFBbUIsQUFBdEIsQ0FBc0I7SUF1QnpDLEtBQUssQ0FBQyxnQkFBZ0I7UUFDcEIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDN0MsQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUI7UUFDckIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDOUMsQ0FBQztJQUVELEtBQUssQ0FBQyxvQkFBb0I7UUFDeEIsSUFBSSxNQUFNLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLENBQUM7WUFDekMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQTtRQUN2RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0dBQWtHLENBQUMsQ0FBQTtRQUNsSCxDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcbmltcG9ydCB7IFBCdXR0b25IYXJuZXNzIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItdGVzdGluZydcbmltcG9ydCB7IFBhZ2VIZWFkZXJIYXJuZXNzIH0gZnJvbSAnLi9wYWdlLWhlYWRlci5oYXJuZXNzJ1xuaW1wb3J0IHsgTW9yZUFjdGlvbnNNZW51QnV0dG9uSGFybmVzcyB9IGZyb20gJy4vbW9yZS1hY3Rpb25zLW1lbnUtYnV0dG9uLmhhcm5lc3MnXG5cbmV4cG9ydCBjbGFzcyBTZWFyY2hIZWFkZXJIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnb2N4LXNlYXJjaC1oZWFkZXInXG5cbiAgZ2V0UGFnZUhlYWRlciA9IHRoaXMubG9jYXRvckZvcihQYWdlSGVhZGVySGFybmVzcylcbiAgZ2V0U2VhcmNoQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKFxuICAgIFBCdXR0b25IYXJuZXNzLndpdGgoe1xuICAgICAgaWQ6ICdzZWFyY2hCdXR0b24nLFxuICAgIH0pXG4gIClcblxuICBnZXRSZXNldEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcihcbiAgICBQQnV0dG9uSGFybmVzcy53aXRoKHtcbiAgICAgIGlkOiAncmVzZXRCdXR0b24nLFxuICAgIH0pXG4gIClcblxuICBnZXRTaW1wbGVBZHZhbmNlZEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKFxuICAgIFBCdXR0b25IYXJuZXNzLndpdGgoe1xuICAgICAgaWQ6ICdzaW1wbGVBZHZhbmNlZEJ1dHRvbicsXG4gICAgfSlcbiAgKVxuXG4gIGdldE1vcmVBY3Rpb25zTWVudUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKE1vcmVBY3Rpb25zTWVudUJ1dHRvbkhhcm5lc3MpXG5cbiAgYXN5bmMgY2xpY2tSZXNldEJ1dHRvbigpIHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5nZXRSZXNldEJ1dHRvbigpKS5jbGljaygpXG4gIH1cblxuICBhc3luYyBjbGlja1NlYXJjaEJ1dHRvbigpIHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5nZXRTZWFyY2hCdXR0b24oKSkuY2xpY2soKVxuICB9XG5cbiAgYXN5bmMgdG9nZ2xlU2ltcGxlQWR2YW5jZWQoKSB7XG4gICAgaWYgKGF3YWl0IHRoaXMuZ2V0U2ltcGxlQWR2YW5jZWRCdXR0b24oKSkge1xuICAgICAgYXdhaXQgKGF3YWl0IHRoaXMuZ2V0U2ltcGxlQWR2YW5jZWRCdXR0b24oKSk/LmNsaWNrKClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKCdObyBTaW1wbGVBZHZhbmNlZEJ1dHRvbiBpcyBiZWluZyBkaXNwbGF5ZWQgdG8gdG9nZ2xlLCBiZWNhdXNlIG5vIGFkdmFuY2VkIGZvcm0gZmllbGQgaXMgZGVmaW5lZC4nKVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ContentContainerComponentHarness } from '@angular/cdk/testing';
|
|
2
|
+
export class SlotHarness extends ContentContainerComponentHarness {
|
|
3
|
+
static { this.hostSelector = 'ocx-slot'; }
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xvdC5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3Rlc3Rpbmcvc2xvdC5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsZ0NBQWdDLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQU0zRixNQUFNLE9BQU8sV0FBWSxTQUFRLGdDQUFnQzthQUN4RCxpQkFBWSxHQUFHLFVBQVUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VIYXJuZXNzRmlsdGVycywgQ29udGVudENvbnRhaW5lckNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcblxuZXhwb3J0IGludGVyZmFjZSBTbG90SGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICBuYW1lPzogc3RyaW5nXG59XG5cbmV4cG9ydCBjbGFzcyBTbG90SGFybmVzcyBleHRlbmRzIENvbnRlbnRDb250YWluZXJDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdvY3gtc2xvdCdcbn1cbiJdfQ==
|
|
@@ -288,12 +288,17 @@ class GroupByCountDiagramHarness extends ComponentHarness {
|
|
|
288
288
|
static { this.hostSelector = 'ocx-group-by-count-diagram'; }
|
|
289
289
|
}
|
|
290
290
|
|
|
291
|
+
class SlotHarness extends ContentContainerComponentHarness {
|
|
292
|
+
static { this.hostSelector = 'ocx-slot'; }
|
|
293
|
+
}
|
|
294
|
+
|
|
291
295
|
class InteractiveDataViewHarness extends ContentContainerComponentHarness {
|
|
292
296
|
constructor() {
|
|
293
297
|
super(...arguments);
|
|
294
298
|
this.getDataLayoutSelection = this.locatorFor(DataLayoutSelectionHarness);
|
|
295
299
|
this.getColumnGroupSelectionDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'columnGroupSelectionDropdown' }));
|
|
296
|
-
this.getCustomGroupColumnSelector = this.
|
|
300
|
+
this.getCustomGroupColumnSelector = this.locatorForOptional(CustomGroupColumnSelectorHarness);
|
|
301
|
+
this.getCustomGroupColumnSelectorSlot = this.locatorForOptional(SlotHarness);
|
|
297
302
|
this.getDataListGridSortingDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'dataListGridSortingDropdown' }));
|
|
298
303
|
this.getDataListGridSortingButton = this.locatorForOptional(PButtonHarness.with({ id: 'dataListGridSortingButton' }));
|
|
299
304
|
this.getDataView = this.locatorFor(DataViewHarness);
|
|
@@ -380,19 +385,10 @@ class ObjectDetailItemHarness extends ComponentHarness {
|
|
|
380
385
|
}
|
|
381
386
|
}
|
|
382
387
|
|
|
383
|
-
class SearchConfigHarness extends ContentContainerComponentHarness {
|
|
384
|
-
constructor() {
|
|
385
|
-
super(...arguments);
|
|
386
|
-
this.getSearchConfigDropdown = this.locatorForOptional(PDropdownHarness.with({ id: 'searchConfig' }));
|
|
387
|
-
}
|
|
388
|
-
static { this.hostSelector = 'ocx-search-config'; }
|
|
389
|
-
}
|
|
390
|
-
|
|
391
388
|
class SearchHeaderHarness extends ComponentHarness {
|
|
392
389
|
constructor() {
|
|
393
390
|
super(...arguments);
|
|
394
391
|
this.getPageHeader = this.locatorFor(PageHeaderHarness);
|
|
395
|
-
this.getSearchConfig = this.locatorFor(SearchConfigHarness);
|
|
396
392
|
this.getSearchButton = this.locatorFor(PButtonHarness.with({
|
|
397
393
|
id: 'searchButton',
|
|
398
394
|
}));
|
|
@@ -425,5 +421,5 @@ class SearchHeaderHarness extends ComponentHarness {
|
|
|
425
421
|
* Generated bundle index. Do not edit.
|
|
426
422
|
*/
|
|
427
423
|
|
|
428
|
-
export { ColumnGroupSelectionHarness, CustomGroupColumnSelectorHarness, DataLayoutSelectionHarness, DataListGridHarness, DataTableHarness, DataViewHarness, DefaultGridItemHarness, DefaultListItemHarness, DiagramHarness, GroupByCountDiagramHarness, InteractiveDataViewHarness, MoreActionsMenuButtonHarness, PageHeaderHarness,
|
|
424
|
+
export { ColumnGroupSelectionHarness, CustomGroupColumnSelectorHarness, DataLayoutSelectionHarness, DataListGridHarness, DataTableHarness, DataViewHarness, DefaultGridItemHarness, DefaultListItemHarness, DiagramHarness, GroupByCountDiagramHarness, InteractiveDataViewHarness, MoreActionsMenuButtonHarness, PageHeaderHarness, SearchHeaderHarness, SlotHarness };
|
|
429
425
|
//# sourceMappingURL=onecx-angular-accelerator-testing.mjs.map
|