verben-workflow-ui 0.4.6 → 0.4.7
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/lib/components/actors/actors.columns.mjs +5 -2
- package/esm2022/lib/components/actors/actors.component.mjs +49 -10
- package/esm2022/lib/components/actors/actors.facade.mjs +29 -19
- package/esm2022/lib/components/actors/actors.form.component.mjs +10 -7
- package/esm2022/lib/components/actors/actors.service.mjs +16 -10
- package/esm2022/lib/components/actors/actors.state.mjs +6 -6
- package/esm2022/lib/components/workflow-designer/designer-canvas/designer-canvas.component.mjs +13 -14
- package/esm2022/lib/components/workflows/workflows.component.mjs +6 -5
- package/fesm2022/verben-workflow-ui.mjs +145 -87
- package/fesm2022/verben-workflow-ui.mjs.map +1 -1
- package/lib/components/actors/actors.component.d.ts +8 -3
- package/lib/components/actors/actors.facade.d.ts +3 -1
- package/lib/components/actors/actors.form.component.d.ts +3 -1
- package/lib/components/actors/actors.service.d.ts +11 -6
- package/lib/components/actors/actors.state.d.ts +4 -2
- package/lib/components/workflow-designer/designer-canvas/designer-canvas.component.d.ts +0 -1
- package/package.json +1 -1
|
@@ -8,17 +8,20 @@ export const columns = [
|
|
|
8
8
|
id: 'name',
|
|
9
9
|
header: 'NAME',
|
|
10
10
|
accessorKey: 'Name',
|
|
11
|
+
formControlName: 'Name',
|
|
11
12
|
},
|
|
12
13
|
{
|
|
13
14
|
id: 'email',
|
|
14
15
|
header: 'E-MAIL',
|
|
15
16
|
accessorKey: 'Identifier',
|
|
17
|
+
formControlName: 'Identifier',
|
|
16
18
|
},
|
|
17
19
|
{
|
|
18
20
|
id: 'tags',
|
|
19
21
|
header: 'Tags',
|
|
20
|
-
accessorFn: (row) => row.
|
|
22
|
+
accessorFn: (row) => row.Tags?.map((tag) => tag.Name).join(', '),
|
|
23
|
+
formControlName: 'Tags',
|
|
21
24
|
},
|
|
22
25
|
{ id: 'actions', header: 'Actions' },
|
|
23
26
|
];
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0b3JzLmNvbHVtbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL2FjdG9ycy9hY3RvcnMuY29sdW1ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQThCO0lBQ2hEO1FBQ0UsRUFBRSxFQUFFLE1BQU07UUFDVixNQUFNLEVBQUUsU0FBUztRQUNqQixXQUFXLEVBQUUsV0FBVztLQUN6QjtJQUNEO1FBQ0UsRUFBRSxFQUFFLE1BQU07UUFDVixNQUFNLEVBQUUsTUFBTTtRQUNkLFdBQVcsRUFBRSxNQUFNO1FBQ25CLGVBQWUsRUFBRSxNQUFNO0tBQ3hCO0lBQ0Q7UUFDRSxFQUFFLEVBQUUsT0FBTztRQUNYLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLFdBQVcsRUFBRSxZQUFZO1FBQ3pCLGVBQWUsRUFBRSxZQUFZO0tBQzlCO0lBQ0Q7UUFDRSxFQUFFLEVBQUUsTUFBTTtRQUNWLE1BQU0sRUFBRSxNQUFNO1FBQ2QsVUFBVSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDaEUsZUFBZSxFQUFFLE1BQU07S0FDeEI7SUFDRCxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRTtDQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uRGVmaW5pdGlvbiB9IGZyb20gJ3ZlcmJlbi1uZy11aSc7XG5pbXBvcnQgeyBBY3RvciB9IGZyb20gJy4uLy4uL21vZGVscy9BY3Rvcic7XG5cbmV4cG9ydCBjb25zdCBjb2x1bW5zOiBDb2x1bW5EZWZpbml0aW9uPEFjdG9yPltdID0gW1xuICB7XG4gICAgaWQ6ICdkYXRlJyxcbiAgICBoZWFkZXI6ICdDUkVBVEVEJyxcbiAgICBhY2Nlc3NvcktleTogJ0NyZWF0ZWRBdCcsXG4gIH0sXG4gIHtcbiAgICBpZDogJ25hbWUnLFxuICAgIGhlYWRlcjogJ05BTUUnLFxuICAgIGFjY2Vzc29yS2V5OiAnTmFtZScsXG4gICAgZm9ybUNvbnRyb2xOYW1lOiAnTmFtZScsXG4gIH0sXG4gIHtcbiAgICBpZDogJ2VtYWlsJyxcbiAgICBoZWFkZXI6ICdFLU1BSUwnLFxuICAgIGFjY2Vzc29yS2V5OiAnSWRlbnRpZmllcicsXG4gICAgZm9ybUNvbnRyb2xOYW1lOiAnSWRlbnRpZmllcicsXG4gIH0sXG4gIHtcbiAgICBpZDogJ3RhZ3MnLFxuICAgIGhlYWRlcjogJ1RhZ3MnLFxuICAgIGFjY2Vzc29yRm46IChyb3cpID0+IHJvdy5UYWdzPy5tYXAoKHRhZykgPT4gdGFnLk5hbWUpLmpvaW4oJywgJyksXG4gICAgZm9ybUNvbnRyb2xOYW1lOiAnVGFncycsXG4gIH0sXG4gIHsgaWQ6ICdhY3Rpb25zJywgaGVhZGVyOiAnQWN0aW9ucycgfSxcbl07XG4iXX0=
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
1
|
+
import { Component, signal, } from '@angular/core';
|
|
2
2
|
import { BaseDataViewComponent } from '../../shared/components/base-data-view.component';
|
|
3
3
|
import { columns } from './actors.columns';
|
|
4
|
+
import { Validators } from '@angular/forms';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "./actors.facade";
|
|
6
|
-
import * as i2 from "@angular/
|
|
7
|
-
import * as i3 from "
|
|
8
|
-
import * as i4 from "
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "verben-ng-ui";
|
|
10
|
+
import * as i5 from "./actors.form.component";
|
|
9
11
|
export class ActorsComponent extends BaseDataViewComponent {
|
|
10
12
|
cdr;
|
|
11
13
|
facade;
|
|
14
|
+
fb;
|
|
12
15
|
config = {
|
|
13
16
|
dataSource: [], // Populate from service
|
|
14
17
|
columns: columns, // Your existing column definitions
|
|
@@ -26,22 +29,58 @@ export class ActorsComponent extends BaseDataViewComponent {
|
|
|
26
29
|
// Custom detail view logic
|
|
27
30
|
},
|
|
28
31
|
};
|
|
29
|
-
|
|
32
|
+
tags = signal([]);
|
|
33
|
+
formGroupConfig;
|
|
34
|
+
constructor(cdr, facade, fb) {
|
|
30
35
|
super();
|
|
31
36
|
this.cdr = cdr;
|
|
32
37
|
this.facade = facade;
|
|
38
|
+
this.fb = fb;
|
|
39
|
+
this.formGroupConfig = signal({
|
|
40
|
+
controls: {
|
|
41
|
+
Name: this.fb.control('', [Validators.required]),
|
|
42
|
+
Identifier: this.fb.control('', [Validators.required]),
|
|
43
|
+
Tags: this.fb.control([], [Validators.required]),
|
|
44
|
+
},
|
|
45
|
+
// validatorOrOpts: null,
|
|
46
|
+
// asyncValidator: null,
|
|
47
|
+
});
|
|
33
48
|
this.facade.getRequests$().subscribe((data) => {
|
|
34
49
|
this.data.set(data);
|
|
35
50
|
});
|
|
51
|
+
this.facade.getTags$().subscribe((data) => {
|
|
52
|
+
this.tags.set(data);
|
|
53
|
+
});
|
|
36
54
|
}
|
|
37
55
|
loadInitialData() {
|
|
38
56
|
try {
|
|
39
57
|
this.facade.loadRequests();
|
|
58
|
+
this.facade.loadTags();
|
|
40
59
|
}
|
|
41
60
|
catch (error) {
|
|
42
61
|
// Handle error
|
|
43
62
|
}
|
|
44
63
|
}
|
|
64
|
+
// generateFormGroup(data?: Partial<Actor>) {
|
|
65
|
+
// console.log(data);
|
|
66
|
+
// const form = this.fb.group({
|
|
67
|
+
// Name: new FormControl(data?.Name ?? '', [Validators.required]),
|
|
68
|
+
// Identifier: new FormControl(data?.Identifier ?? '', [
|
|
69
|
+
// Validators.required,
|
|
70
|
+
// ]),
|
|
71
|
+
// Tags: new FormControl(data?.Tags ?? [], [Validators.required]),
|
|
72
|
+
// });
|
|
73
|
+
// // console.log(form.value);
|
|
74
|
+
// return form;
|
|
75
|
+
// }
|
|
76
|
+
// getFormControl(index: number, field: string) {
|
|
77
|
+
// const control = this.editForms.get(index)?.get(field) as FormControl<any>;
|
|
78
|
+
// console.log(control);
|
|
79
|
+
// return control;
|
|
80
|
+
// }
|
|
81
|
+
// isRowValid(index: number): boolean {
|
|
82
|
+
// return this.editForms.get(index)?.valid || false;
|
|
83
|
+
// }
|
|
45
84
|
getCardDataByIdentifier(code) {
|
|
46
85
|
return this.cardData()?.find(({ data }) => data.data.Code === code);
|
|
47
86
|
}
|
|
@@ -60,11 +99,11 @@ export class ActorsComponent extends BaseDataViewComponent {
|
|
|
60
99
|
};
|
|
61
100
|
await this.facade.addRequest(payload);
|
|
62
101
|
}
|
|
63
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActorsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.ActorFacade }], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActorsComponent, selector: "lib-actors", usesInheritance: true, ngImport: i0, template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: false,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"date\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center gap-1\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >E-Mail:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Identifier\n }}</span>\n </p>\n </div>\n\n <!-- <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div> -->\n\n <div class=\"grid gap-y-1\">\n <p class=\"grid\">\n <label\n for=\"role\"\n class=\"text-[10px] font-light text-[#404040]\"\n >Name</label\n >\n <span id=\"role\" class=\"text-sm font-medium\">{{\n item.data?.Name\n }}</span>\n </p>\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <actors-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></actors-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.DataTableComponent, selector: "lib-data-table", inputs: ["data", "columns", "dataKey", "formGroupConfig", "groupBy", "styleConfig"], outputs: ["rowEdit", "rowSave", "rowRevert", "rowDelete", "selectionChange"] }, { kind: "directive", type: i3.ColumnDirective, selector: "[libColumn]", inputs: ["libColumn"] }, { kind: "component", type: i3.DataViewComponent, selector: "verben-data-view", inputs: ["buttonClass", "iconClass", "activeIconClass", "columnCustomClass", "filterCustomClass", "sortCustomClass", "extendCustomClass", "exportCustomClass", "selectCustomClass", "importCustomClass", "zIndex", "createCustomClass", "tableIcon", "cardIcon", "cardClass", "tableClass", "searchKey", "searchValue", "viewState", "searchTemplate", "importTemplate", "columnTemplate", "extendTemplate", "filterTemplate", "sortTemplate", "children", "exportTemplate", "createTemplate", "selectedColumnCount", "selectedSortCount", "selectedFilterTableCount", "inputWidth", "milliseconds", "showColumnChild", "showSortChild", "showFilterChild", "showImportChild", "showExportChild", "showExtendChild", "create", "showSelected", "isTableView"], outputs: ["viewChange", "stateChange", "onSearchChange"] }, { kind: "component", type: i3.CardDataViewComponent, selector: "verben-card-data-view", inputs: ["pd", "mg", "lHeight", "rHeight", "rWidth", "lWidth", "textColor", "lbgColor", "rbgColor", "border", "display", "borderRadius", "activeCss", "inActiveCss", "displayAsRow", "cardDataList", "dataId", "totalRecords", "footer", "noOfVisibleChildren", "onItemClick", "onCardChildClick"], outputs: ["loadMoreClick"] }, { kind: "component", type: i3.LeftCardDataComponent, selector: "verben-left-card-data", inputs: ["pd", "mg", "height", "weight", "activeCss", "inActiveCss", "cardDataList", "iconCollapse", "iconExpanded", "parent", "dataId"] }, { kind: "component", type: i3.LeftCardDataViewComponent, selector: "verben-left-card-data-view", inputs: ["cardDataList"] }, { kind: "component", type: i3.RightCardDataViewComponent, selector: "verben-right-card-data-view", inputs: ["parentData", "chilData", "meth"] }, { kind: "component", type: i3.CardDataViewFooterComponent, selector: "verben-card-data-view-footer" }, { kind: "component", type: i3.TableFilterComponent, selector: "verben-table-filter", inputs: ["filterOptions", "pd", "mg", "height", "width", "bgColor", "boxShadow", "textColor", "primaryColor", "secondaryColor", "tertiaryColor", "border", "borderRadius", "selectWidth", "maxFilterLength", "tooltip"], outputs: ["filtersApplied", "resetSortData"] }, { kind: "component", type: i3.DataExportComponent, selector: "lib-data-export", inputs: ["columns", "data"], outputs: ["exportDataEvent"] }, { kind: "component", type: i3.DataColumnsComponent, selector: "lib-data-columns", inputs: ["columns", "enableDragAndDrop", "maxVisibleItems"], outputs: ["columnsUpdated"] }, { kind: "component", type: i3.DataSortComponent, selector: "lib-data-sort", inputs: ["columns", "data", "enableDragAndDrop"], outputs: ["sortApplied", "resetFilter"] }, { kind: "component", type: i4.ActorsFormComponent, selector: "actors-form", inputs: ["currentData"], outputs: ["onSave", "switchView"] }, { kind: "pipe", type: i2.DatePipe, name: "date" }] });
|
|
102
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActorsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.ActorFacade }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
103
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActorsComponent, selector: "lib-actors", usesInheritance: true, ngImport: i0, template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: false,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n [formGroupConfig]=\"formGroupConfig()\"\n (selectionChange)=\"onSelectionChange($event)\"\n (rowSave)=\"onSave($event.data)\"\n >\n <ng-container libColumn=\"date\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"name\">\n <ng-template #cellEdit let-control=\"control\">\n <verbena-input\n name=\"Name\"\n [formControl]=\"control\"\n placeHolder=\"Enter Name\"\n />\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"tags\">\n <ng-template #cellEdit let-control=\"control\">\n <verben-drop-down\n styleClass=\"w-full\"\n width=\"100%\"\n [multiselect]=\"false\"\n placeholder=\"Select tags\"\n [options]=\"tags()\"\n optionLabel=\"Name\"\n id=\"tags\"\n [formControl]=\"control\"\n class=\"form-control\"\n >\n </verben-drop-down>\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template\n #cell\n let-value\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-deleteRow=\"deleteRow\"\n >\n <div class=\"flex gap-6\">\n <verben-svg\n (click)=\"toggleRowEdit()\"\n icon=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n class=\"cursor-pointer\"\n ></verben-svg>\n\n <verben-svg\n icon=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"deleteRow()\"\n class=\"cursor-pointer\"\n ></verben-svg>\n </div>\n </ng-template>\n\n <ng-template\n #cellEdit\n let-value\n let-deleteRow\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-row=\"row\"\n let-rowIndex=\"rowIndex\"\n >\n <div class=\"flex gap-6\">\n <verben-svg\n (click)=\"toggleRowEdit()\"\n icon=\"tick\"\n [width]=\"15\"\n [height]=\"15\"\n class=\"cursor-pointer\"\n ></verben-svg>\n\n <verben-svg\n icon=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"toggleRowEdit()\"\n class=\"cursor-pointer\"\n ></verben-svg>\n </div>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center gap-1\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >E-Mail:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Identifier\n }}</span>\n </p>\n </div>\n\n <!-- <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div> -->\n\n <div class=\"grid gap-y-1\">\n <p class=\"grid\">\n <label\n for=\"role\"\n class=\"text-[10px] font-light text-[#404040]\"\n >Name</label\n >\n <span id=\"role\" class=\"text-sm font-medium\">{{\n item.data?.Name\n }}</span>\n </p>\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <actors-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></actors-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DataTableComponent, selector: "lib-data-table", inputs: ["data", "columns", "dataKey", "formGroupConfig", "groupBy", "styleConfig"], outputs: ["rowEdit", "rowSave", "rowRevert", "rowDelete", "selectionChange"] }, { kind: "directive", type: i4.ColumnDirective, selector: "[libColumn]", inputs: ["libColumn"] }, { kind: "component", type: i4.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }, { kind: "component", type: i4.DataViewComponent, selector: "verben-data-view", inputs: ["buttonClass", "iconClass", "activeIconClass", "columnCustomClass", "filterCustomClass", "sortCustomClass", "extendCustomClass", "exportCustomClass", "selectCustomClass", "importCustomClass", "zIndex", "createCustomClass", "tableIcon", "cardIcon", "cardClass", "tableClass", "searchKey", "searchValue", "viewState", "searchTemplate", "importTemplate", "columnTemplate", "extendTemplate", "filterTemplate", "sortTemplate", "children", "exportTemplate", "createTemplate", "selectedColumnCount", "selectedSortCount", "selectedFilterTableCount", "inputWidth", "milliseconds", "showColumnChild", "showSortChild", "showFilterChild", "showImportChild", "showExportChild", "showExtendChild", "create", "showSelected", "isTableView"], outputs: ["viewChange", "stateChange", "onSearchChange"] }, { kind: "component", type: i4.CardDataViewComponent, selector: "verben-card-data-view", inputs: ["pd", "mg", "lHeight", "rHeight", "rWidth", "lWidth", "textColor", "lbgColor", "rbgColor", "border", "display", "borderRadius", "activeCss", "inActiveCss", "displayAsRow", "cardDataList", "dataId", "totalRecords", "footer", "noOfVisibleChildren", "onItemClick", "onCardChildClick"], outputs: ["loadMoreClick"] }, { kind: "component", type: i4.LeftCardDataComponent, selector: "verben-left-card-data", inputs: ["pd", "mg", "height", "weight", "activeCss", "inActiveCss", "cardDataList", "iconCollapse", "iconExpanded", "parent", "dataId"] }, { kind: "component", type: i4.LeftCardDataViewComponent, selector: "verben-left-card-data-view", inputs: ["cardDataList"] }, { kind: "component", type: i4.RightCardDataViewComponent, selector: "verben-right-card-data-view", inputs: ["parentData", "chilData", "meth"] }, { kind: "component", type: i4.CardDataViewFooterComponent, selector: "verben-card-data-view-footer" }, { kind: "component", type: i4.TableFilterComponent, selector: "verben-table-filter", inputs: ["filterOptions", "pd", "mg", "height", "width", "bgColor", "boxShadow", "textColor", "primaryColor", "secondaryColor", "tertiaryColor", "border", "borderRadius", "selectWidth", "maxFilterLength", "tooltip"], outputs: ["filtersApplied", "resetSortData"] }, { kind: "component", type: i4.DataExportComponent, selector: "lib-data-export", inputs: ["columns", "data"], outputs: ["exportDataEvent"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.VerbenaInputComponent, selector: "verbena-input", inputs: ["label", "placeHolder", "required", "svgPosition", "minLength", "maxLength", "type", "bgColor", "border", "borderRadius", "textColor", "value", "labelPosition", "labelColor", "disable", "readOnly", "min", "max", "showBorder", "showErrorMessage", "errorMessageColor", "errorBorderColor", "errorPosition", "svg", "fontSize", "svgWidth", "svgHeight", "svgColor", "capitalization", "inputContainerClass", "inputFieldClass", "passLength", "inputWrapperClass", "passwordToggle", "customErrorMessages", "icon", "textPass"], outputs: ["valueChange"] }, { kind: "component", type: i4.DropDownComponent, selector: "verben-drop-down", inputs: ["options", "width", "showHorizontalLine", "horizontalLineColor", "optionLabel", "optionSubLabel", "optionValue", "placeholder", "invalidMessage", "errorPosition", "loadMoreCaption", "display", "showClear", "lazyLoad", "selectKey", "styleClass", "group", "multiselect", "filter", "avoidDuplication", "filterBy", "debounceTime", "minChar", "disabled", "required", "load", "asyncLabel", "search"], outputs: ["optionsChange", "onChange", "onClick", "onClear"] }, { kind: "component", type: i4.DataColumnsComponent, selector: "lib-data-columns", inputs: ["columns", "enableDragAndDrop", "maxVisibleItems"], outputs: ["columnsUpdated"] }, { kind: "component", type: i4.DataSortComponent, selector: "lib-data-sort", inputs: ["columns", "data", "enableDragAndDrop"], outputs: ["sortApplied", "resetFilter"] }, { kind: "component", type: i5.ActorsFormComponent, selector: "actors-form", inputs: ["currentData"], outputs: ["onSave", "switchView"] }, { kind: "pipe", type: i3.DatePipe, name: "date" }] });
|
|
65
104
|
}
|
|
66
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActorsComponent, decorators: [{
|
|
67
106
|
type: Component,
|
|
68
|
-
args: [{ selector: 'lib-actors', template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: false,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <ng-container libColumn=\"date\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center gap-1\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >E-Mail:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Identifier\n }}</span>\n </p>\n </div>\n\n <!-- <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div> -->\n\n <div class=\"grid gap-y-1\">\n <p class=\"grid\">\n <label\n for=\"role\"\n class=\"text-[10px] font-light text-[#404040]\"\n >Name</label\n >\n <span id=\"role\" class=\"text-sm font-medium\">{{\n item.data?.Name\n }}</span>\n </p>\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <actors-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></actors-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n" }]
|
|
69
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.ActorFacade }] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0b3JzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi13b3JrZmxvdy11aS9zcmMvbGliL2NvbXBvbmVudHMvYWN0b3JzL2FjdG9ycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL2FjdG9ycy9hY3RvcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFHekYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFVM0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEscUJBQTRCO0lBbUIzQztJQUFnQztJQWxCcEQsTUFBTSxHQUEwQjtRQUM5QixVQUFVLEVBQUUsRUFBRSxFQUFFLHdCQUF3QjtRQUN4QyxPQUFPLEVBQUUsT0FBTyxFQUFFLG1DQUFtQztRQUNyRCxjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUIsUUFBUSxFQUFFLEtBQUs7WUFDZixLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJO1lBQzFCLElBQUksRUFBRSxLQUFLO1lBQ1gsSUFBSSxFQUFFO2dCQUNKLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDcEMsNENBQTRDO2FBQzdDO1lBQ0QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO1FBQ0YsWUFBWSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdEIsMkJBQTJCO1FBQzdCLENBQUM7S0FDRixDQUFDO0lBRUYsWUFBb0IsR0FBc0IsRUFBVSxNQUFtQjtRQUNyRSxLQUFLLEVBQUUsQ0FBQztRQURVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBYTtRQUdyRSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWU7UUFDdEIsSUFBSSxDQUFDO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGVBQWU7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFUyx1QkFBdUIsQ0FBQyxJQUFZO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksQ0FBQztZQUNILE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGVBQWU7UUFDakIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLElBQW9CO1FBQy9CLE1BQU0sT0FBTyxHQUFHO1lBQ2QsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUk7WUFDekIsR0FBRyxJQUFJO1NBQ0MsQ0FBQztRQUNYLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEMsQ0FBQzt3R0FyRFUsZUFBZTs0RkFBZixlQUFlLHlFQ2Q1Qix3MlFBZ1BBOzs0RkRsT2EsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlRGF0YVZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlLWRhdGEtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0b3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvQWN0b3InO1xuaW1wb3J0IHsgRGF0YVZpZXdDb25maWcgfSBmcm9tICcuLi8uLi9zaGFyZWQvbW9kZWxzL0RhdGFWaWV3Q29uZmlnJztcbmltcG9ydCB7IGNvbHVtbnMgfSBmcm9tICcuL2FjdG9ycy5jb2x1bW5zJztcbmltcG9ydCB7IEFjdG9yTW9kZWwgfSBmcm9tICcuL2FjdG9ycy5tb2RlbCc7XG5pbXBvcnQgeyBDYXJkRGF0YSB9IGZyb20gJ3ZlcmJlbi1uZy11aSc7XG5pbXBvcnQgeyBBY3RvckZhY2FkZSB9IGZyb20gJy4vYWN0b3JzLmZhY2FkZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hY3RvcnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWN0b3JzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2FjdG9ycy5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQWN0b3JzQ29tcG9uZW50IGV4dGVuZHMgQmFzZURhdGFWaWV3Q29tcG9uZW50PEFjdG9yPiB7XG4gIGNvbmZpZzogRGF0YVZpZXdDb25maWc8QWN0b3I+ID0ge1xuICAgIGRhdGFTb3VyY2U6IFtdLCAvLyBQb3B1bGF0ZSBmcm9tIHNlcnZpY2VcbiAgICBjb2x1bW5zOiBjb2x1bW5zLCAvLyBZb3VyIGV4aXN0aW5nIGNvbHVtbiBkZWZpbml0aW9uc1xuICAgIGNhcmREYXRhTWFwcGVyOiAoYWN0b3IpID0+ICh7XG4gICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICB0aXRsZTogYWN0b3IuVGFnc1swXT8uTmFtZSxcbiAgICAgIGRhdGE6IGFjdG9yLFxuICAgICAgYm9keTogW1xuICAgICAgICB7IHRpdGxlOiAnTmFtZScsIHZhbHVlOiBhY3Rvci5OYW1lIH0sXG4gICAgICAgIC8vIHsgdGl0bGU6ICdTdGF0dXMnLCB2YWx1ZTogYWN0b3IuU3RhdHVzIH0sXG4gICAgICBdLFxuICAgICAgY2hpbGRyZW46IFtdLFxuICAgIH0pLFxuICAgIG9uRGV0YWlsVmlldzogKGFjdG9yKSA9PiB7XG4gICAgICAvLyBDdXN0b20gZGV0YWlsIHZpZXcgbG9naWNcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBmYWNhZGU6IEFjdG9yRmFjYWRlKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuZmFjYWRlLmdldFJlcXVlc3RzJCgpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xuICAgICAgdGhpcy5kYXRhLnNldChkYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIGxvYWRJbml0aWFsRGF0YSgpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5mYWNhZGUubG9hZFJlcXVlc3RzKCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIEhhbmRsZSBlcnJvclxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRDYXJkRGF0YUJ5SWRlbnRpZmllcihjb2RlOiBzdHJpbmcpOiBDYXJkRGF0YSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY2FyZERhdGEoKT8uZmluZCgoeyBkYXRhIH0pID0+IGRhdGEuZGF0YS5Db2RlID09PSBjb2RlKTtcbiAgfVxuXG4gIGFzeW5jIGxvYWRNb3JlKCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmZhY2FkZS5sb2FkTW9yZSgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBIYW5kbGUgZXJyb3JcbiAgICB9XG4gIH1cblxuICBhc3luYyBvblNhdmUoZGF0YTogUGFydGlhbDxBY3Rvcj4pIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgLi4udGhpcy5jdXJyZW50RGF0YT8uZGF0YSxcbiAgICAgIC4uLmRhdGEsXG4gICAgfSBhcyBBY3RvcjtcbiAgICBhd2FpdCB0aGlzLmZhY2FkZS5hZGRSZXF1ZXN0KHBheWxvYWQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic3BhY2UteS04XCI+XG4gIDx2ZXJiZW4tZGF0YS12aWV3XG4gICAgI3ZkdlxuICAgIFt2aWV3U3RhdGVdPVwie1xuICAgICAgaXNTZWFyY2g6IHRydWUsXG4gICAgICBpc0NvbHVtbjogdHJ1ZSxcbiAgICAgIGlzRmlsdGVyOiB0cnVlLFxuICAgICAgaXNTb3J0OiB0cnVlLFxuICAgICAgaXNFeHBvcnQ6IHRydWUsXG4gICAgICBpc1NlbGVjdDogdHJ1ZSxcbiAgICAgIGlzQ3JlYXRlOiBmYWxzZSxcbiAgICAgIGlzVG9nZ2xlOiB0cnVlLFxuICAgIH1cIlxuICAgIFtidXR0b25DbGFzc109XCInbXktY3VzdG9tLWJ1dHRvbi1jbGFzcydcIlxuICAgIFtpY29uQ2xhc3NdPVwiJ215LWljb24tY2xhc3MnXCJcbiAgICBbYWN0aXZlSWNvbkNsYXNzXT1cIidteS1hY3RpdmUtaWNvbi1jbGFzcydcIlxuICAgIFtzZWxlY3RlZENvbHVtbkNvdW50XT1cIjBcIlxuICAgIFtzZWxlY3RlZFNvcnRDb3VudF09XCIwXCJcbiAgICBbc2VsZWN0ZWRGaWx0ZXJUYWJsZUNvdW50XT1cIjBcIlxuICAgICh2aWV3Q2hhbmdlKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQpXCJcbiAgICAoc3RhdGVDaGFuZ2UpPVwib25TdGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPlxuICAgIDxkaXYgdGFibGUtY29udGVudD5cbiAgICAgIDxsaWItZGF0YS10YWJsZVxuICAgICAgICBbZGF0YV09XCJkYXRhKClcIlxuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIFtzdHlsZUNvbmZpZ109XCJzdHlsZXNcIlxuICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uU2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyIGxpYkNvbHVtbj1cImRhdGVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2NlbGwgbGV0LXJvdz1cInJvd1wiIGxldC12YWx1ZT5cbiAgICAgICAgICAgIHt7IHZhbHVlIHwgZGF0ZSB9fVxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9saWItZGF0YS10YWJsZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNhcmQtY29udGVudD5cbiAgICAgIDx2ZXJiZW4tY2FyZC1kYXRhLXZpZXdcbiAgICAgICAgYm9yZGVyUmFkaXVzPVwiMTJweFwiXG4gICAgICAgIChsb2FkTW9yZUNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICAjdmRjdlxuICAgICAgICBkYXRhSWQ9XCJJZFwiXG4gICAgICAgIGJvcmRlcj1cIjVweFwiXG4gICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgIHJiZ0NvbG9yPVwiI2Y1ZjZmOVwiXG4gICAgICAgIG1nPVwiMjBweFwiXG4gICAgICA+XG4gICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldyBjbGFzcz1cInNwYWNlLXktN1wiPlxuICAgICAgICAgIDx2ZXJiZW4tbGVmdC1jYXJkLWRhdGFcbiAgICAgICAgICAgICN2bGNkXG4gICAgICAgICAgICBbcGFyZW50XT1cInZkY3ZcIlxuICAgICAgICAgICAgZGF0YUlkPVwiSWRcIlxuICAgICAgICAgICAgY2xhc3M9XCJiZy1zZWNvbmRhcnktMTAwIHJvdW5kZWQteGwgYm9yZGVyLXByaW1hcnkgYm9yZGVyLVsxcHhdXCJcbiAgICAgICAgICAgIFtjYXJkRGF0YUxpc3RdPVwiY2FyZERhdGEoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjYXJkIGxldC1pdGVtPlxuICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJjdXJyZW50RGF0YSA9IHZkY3Yub25JdGVtQ2xpY2soaXRlbSlcIiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VycmVudERhdGEgPSB2ZGN2Lm9uSXRlbUNsaWNrKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBjdXJzb3ItcG9pbnRlciB3LWZ1bGwgYmctc2Vjb25kYXJ5IHJvdW5kZWQteGxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTMgcm91bmRlZC14bCByb3VuZGVkLXRyLW5vbmUgcm91bmRlZC1ici1ub25lXCJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgaXRlbS5zZWxlY3RlZCA/ICdiZy1wcmltYXJ5JyA6ICdiZy1zZWNvbmRhcnktMjAwJ1xuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktMiBweC00IHctZnVsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTQganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ2FwLXktMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LXNlbWlib2xkIHRleHQtWyM0MDQwNDBdXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1bMTBweF0gZm9udC1saWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPkUtTWFpbDo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJwaG9uZVwiIGNsYXNzPVwidGV4dC1zbVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLklkZW50aWZpZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJncmlkIGdhcC15LTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZvcj1cInJvbGVcIiBjbGFzcz1cImZvbnQtbGlnaHRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmRhdGEuV29ya2Zsb3dDb2RlXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL3dvcmtmbG93L3Rhc2staGlzdG9yeScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLkNvZGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJyb3V0ZXItbGluay1hY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVuZGVybGluZSB0ZXh0LVsjMDAwMEZGXSB0ZXh0LXhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPnZpZXcgaGlzdG9yeTwvYVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cblxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGdhcC15LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZ3JpZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3I9XCJyb2xlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtWzEwcHhdIGZvbnQtbGlnaHQgdGV4dC1bIzQwNDA0MF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5OYW1lPC9sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwicm9sZVwiIGNsYXNzPVwidGV4dC1zbSBmb250LW1lZGl1bVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhPy5OYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LW5vcm1hbCB0ZXh0LXNtXCI+e3sgaXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGNpSXRlbSBvZiBpdGVtLmJvZHk7IHRyYWNrIGNpSXRlbS52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW11dGVkIGZvbnQtbGlnaHQgdGV4dC14c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+e3sgY2lJdGVtLnRpdGxlIH19Ojwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmxhY2tcIj57eyBjaUl0ZW0udmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9IC0tPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L3ZlcmJlbi1sZWZ0LWNhcmQtZGF0YT5cbiAgICAgICAgPC92ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLXJpZ2h0LWNhcmQtZGF0YS12aWV3PlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcGFyZW50PlxuICAgICAgICAgICAgPCEtLSA8bGliLXVzZXItcmVxdWVzdC1mb3JtXG4gICAgICAgICAgICAgIFtjdXJyZW50RGF0YV09XCJjdXJyZW50RGF0YVwiXG4gICAgICAgICAgICAgIChzd2l0Y2hWaWV3KT1cInZkdi50b2dnbGVWaWV3KClcIlxuICAgICAgICAgICAgICAob25BcHByb3ZhbCk9XCJvbkFwcHJvdmUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9saWItdXNlci1yZXF1ZXN0LWZvcm0+IC0tPlxuICAgICAgICAgICAgPGFjdG9ycy1mb3JtXG4gICAgICAgICAgICAgIFtjdXJyZW50RGF0YV09XCJjdXJyZW50RGF0YVwiXG4gICAgICAgICAgICAgIChzd2l0Y2hWaWV3KT1cInZkdi50b2dnbGVWaWV3KClcIlxuICAgICAgICAgICAgICAob25TYXZlKT1cIm9uU2F2ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2FjdG9ycy1mb3JtPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvdmVyYmVuLXJpZ2h0LWNhcmQtZGF0YS12aWV3PlxuXG4gICAgICAgIDx2ZXJiZW4tY2FyZC1kYXRhLXZpZXctZm9vdGVyIGNsYXNzPVwidy1mdWxsXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAnZmxleCBnYXAtMiBpdGVtcy1jZW50ZXInOiB0cnVlLFxuICAgICAgICAgICAgICAnanVzdGlmeS1iZXR3ZWVuJzogdHJ1ZSxcbiAgICAgICAgICAgICAgJ2p1c3RpZnktZW5kJzogdmRjdi5oYXNDdXJyZW50SXRlbSgpXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8IS0tIDx2ZXJiZW5hLWJ1dHRvblxuICAgICAgICAgICAgICAqbmdJZj1cIiF2ZGN2Lmhhc0N1cnJlbnRJdGVtKClcIlxuICAgICAgICAgICAgICBbZm9udFdlaWdodF09XCInYm9sZCdcIlxuICAgICAgICAgICAgICBbYmdDb2xvcl09XCInIzhFOEQ4NydcIlxuICAgICAgICAgICAgICBbYm9yZGVyUmFkaXVzXT1cIic0cHgnXCJcbiAgICAgICAgICAgICAgW3RleHRDb2xvcl09XCInI2ZmZidcIlxuICAgICAgICAgICAgICBbcGRdPVwiJzkuNzlweCAzNy4yOHB4J1wiXG4gICAgICAgICAgICAgIFt0ZXh0XT1cIidEZWxldGUnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvdmVyYmVuYS1idXR0b24+IC0tPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXgge3tcbiAgICAgICAgICAgICAgICB2ZGN2Lmhhc0N1cnJlbnRJdGVtKCkgPyAnZmxleC0xJyA6ICcnXG4gICAgICAgICAgICAgIH19IGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlciBnYXAtNVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGFnaW5hdG9yLXRleHRcIlxuICAgICAgICAgICAgICAgID57eyBjYXJkRGF0YSgpLmxlbmd0aCB9fSByZWNvcmRzIGxvYWRlZDwvc3BhblxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAoY2xpY2spPVwibG9hZE1vcmUoKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJsb2FkLW1vcmUgdmlldy1saW5rcyB0ZXh0LVsjMzQ3OUU5XSB1bmRlcmxpbmVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgTG9hZCBtb3JlXG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3Rlcj5cbiAgICAgIDwvdmVyYmVuLWNhcmQtZGF0YS12aWV3PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY29sdW1uLWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtY29sdW1uc1xuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIChjb2x1bW5zVXBkYXRlZCk9XCJvbkNvbHVtbnNVcGRhdGVkKCRldmVudClcIlxuICAgICAgPjwvbGliLWRhdGEtY29sdW1ucz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGZpbHRlci1jb250ZW50PlxuICAgICAgPHZlcmJlbi10YWJsZS1maWx0ZXJcbiAgICAgICAgW2JvcmRlcl09XCInMXB4IHNvbGlkIHJnYmEoMjEyLCAxNjAsIDcsIDEpJ1wiXG4gICAgICAgIGJvcmRlclJhZGl1cz1cIjEwcHhcIlxuICAgICAgICBib3hTaGFkb3c9XCIycHggMnB4IDJweCAwcHggc2lsdmVyXCJcbiAgICAgICAgYmdDb2xvcj1cIndoaXRlXCJcbiAgICAgICAgd2lkdGg9XCI0MjBweFwiXG4gICAgICAgIHRleHRDb2xvcj1cImJsYWNrXCJcbiAgICAgICAgcGQ9XCIxcmVtXCJcbiAgICAgICAgcHJpbWFyeUNvbG9yPVwiI0ZGRTY4MVwiXG4gICAgICAgIHNlY29uZGFyeUNvbG9yPVwiIzM0NzlFOVwiXG4gICAgICAgIHRlcnRpYXJ5Q29sb3I9XCIjNDA0MDQwXCJcbiAgICAgICAgW2ZpbHRlck9wdGlvbnNdPVwiZmlsdGVyQXJyYXlcIlxuICAgICAgICBbbWF4RmlsdGVyTGVuZ3RoXT1cIjNcIlxuICAgICAgPjwvdmVyYmVuLXRhYmxlLWZpbHRlcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IHNvcnQtY29udGVudD5cbiAgICAgIDxsaWItZGF0YS1zb3J0XG4gICAgICAgIFtjb2x1bW5zXT1cImNvbmZpZy5jb2x1bW5zXCJcbiAgICAgICAgW2RhdGFdPVwiZGF0YSgpXCJcbiAgICAgICAgKHNvcnRBcHBsaWVkKT1cIm9uU29ydFVwZGF0ZWQoJGV2ZW50KVwiXG4gICAgICA+PC9saWItZGF0YS1zb3J0PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgZXhwb3J0LWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtZXhwb3J0IFtkYXRhXT1cImRhdGEoKVwiIChleHBvcnREYXRhRXZlbnQpPVwiaGFuZGxlRXhwb3J0KCRldmVudClcIj5cbiAgICAgIDwvbGliLWRhdGEtZXhwb3J0PlxuICAgIDwvZGl2PlxuICA8L3ZlcmJlbi1kYXRhLXZpZXc+XG5cbiAgPGRpdiAqbmdJZj1cInZkdi5pc1RhYmxlVmlld1wiIGNsYXNzPVwiZmxleCBnYXAtMiBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZS1sb2ctYnV0dG9uLWNvbnRhaW5lciBmbGV4IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgPCEtLSA8dmVyYmVuYS1idXR0b25cbiAgICAgICAgW2ZvbnRXZWlnaHRdPVwiJ2JvbGQnXCJcbiAgICAgICAgW2JnQ29sb3JdPVwiJyM4RThEODcnXCJcbiAgICAgICAgW2JvcmRlclJhZGl1c109XCInNHB4J1wiXG4gICAgICAgIFt0ZXh0Q29sb3JdPVwiJyNmZmYnXCJcbiAgICAgICAgW3BkXT1cIic5Ljc5cHggMzcuMjhweCdcIlxuICAgICAgICBbdGV4dF09XCInRGVsZXRlJ1wiXG4gICAgICA+XG4gICAgICA8L3ZlcmJlbmEtYnV0dG9uPiAtLT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgZ2FwLTVcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwicGFnaW5hdG9yLXRleHRcIj57eyBjYXJkRGF0YSgpLmxlbmd0aCB9fSByZWNvcmRzIGxvYWRlZDwvc3Bhbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKGNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICBjbGFzcz1cImxvYWQtbW9yZSB2aWV3LWxpbmtzIHRleHQtWyMzNDc5RTldIHVuZGVybGluZVwiXG4gICAgICA+XG4gICAgICAgIExvYWQgbW9yZVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
107
|
+
args: [{ selector: 'lib-actors', template: "<div class=\"space-y-8\">\n <verben-data-view\n #vdv\n [viewState]=\"{\n isSearch: true,\n isColumn: true,\n isFilter: true,\n isSort: true,\n isExport: true,\n isSelect: true,\n isCreate: false,\n isToggle: true,\n }\"\n [buttonClass]=\"'my-custom-button-class'\"\n [iconClass]=\"'my-icon-class'\"\n [activeIconClass]=\"'my-active-icon-class'\"\n [selectedColumnCount]=\"0\"\n [selectedSortCount]=\"0\"\n [selectedFilterTableCount]=\"0\"\n (viewChange)=\"onViewChange($event)\"\n (stateChange)=\"onStateChange($event)\"\n >\n <div table-content>\n <lib-data-table\n [data]=\"data()\"\n [columns]=\"config.columns\"\n [styleConfig]=\"styles\"\n [formGroupConfig]=\"formGroupConfig()\"\n (selectionChange)=\"onSelectionChange($event)\"\n (rowSave)=\"onSave($event.data)\"\n >\n <ng-container libColumn=\"date\">\n <ng-template #cell let-row=\"row\" let-value>\n {{ value | date }}\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"name\">\n <ng-template #cellEdit let-control=\"control\">\n <verbena-input\n name=\"Name\"\n [formControl]=\"control\"\n placeHolder=\"Enter Name\"\n />\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"tags\">\n <ng-template #cellEdit let-control=\"control\">\n <verben-drop-down\n styleClass=\"w-full\"\n width=\"100%\"\n [multiselect]=\"false\"\n placeholder=\"Select tags\"\n [options]=\"tags()\"\n optionLabel=\"Name\"\n id=\"tags\"\n [formControl]=\"control\"\n class=\"form-control\"\n >\n </verben-drop-down>\n </ng-template>\n </ng-container>\n\n <ng-container libColumn=\"actions\">\n <ng-template\n #cell\n let-value\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-deleteRow=\"deleteRow\"\n >\n <div class=\"flex gap-6\">\n <verben-svg\n (click)=\"toggleRowEdit()\"\n icon=\"edit\"\n [width]=\"15\"\n [height]=\"15\"\n class=\"cursor-pointer\"\n ></verben-svg>\n\n <verben-svg\n icon=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"deleteRow()\"\n class=\"cursor-pointer\"\n ></verben-svg>\n </div>\n </ng-template>\n\n <ng-template\n #cellEdit\n let-value\n let-deleteRow\n let-isEditing=\"isEditing\"\n let-toggleRowEdit=\"toggleRowEdit\"\n let-row=\"row\"\n let-rowIndex=\"rowIndex\"\n >\n <div class=\"flex gap-6\">\n <verben-svg\n (click)=\"toggleRowEdit()\"\n icon=\"tick\"\n [width]=\"15\"\n [height]=\"15\"\n class=\"cursor-pointer\"\n ></verben-svg>\n\n <verben-svg\n icon=\"delete\"\n [width]=\"15\"\n [height]=\"15\"\n (click)=\"toggleRowEdit()\"\n class=\"cursor-pointer\"\n ></verben-svg>\n </div>\n </ng-template>\n </ng-container>\n </lib-data-table>\n </div>\n <div card-content>\n <verben-card-data-view\n borderRadius=\"12px\"\n (loadMoreClick)=\"loadMore()\"\n #vdcv\n dataId=\"Id\"\n border=\"5px\"\n [cardDataList]=\"cardData()\"\n rbgColor=\"#f5f6f9\"\n mg=\"20px\"\n >\n <verben-left-card-data-view class=\"space-y-7\">\n <verben-left-card-data\n #vlcd\n [parent]=\"vdcv\"\n dataId=\"Id\"\n class=\"bg-secondary-100 rounded-xl border-primary border-[1px]\"\n [cardDataList]=\"cardData()\"\n >\n <ng-template #card let-item>\n <div (click)=\"currentData = vdcv.onItemClick(item)\" class=\"flex\">\n <div\n (click)=\"currentData = vdcv.onItemClick(item)\"\n class=\"flex cursor-pointer w-full bg-secondary rounded-xl\"\n >\n <div\n class=\"w-3 rounded-xl rounded-tr-none rounded-br-none\"\n [ngClass]=\"\n item.selected ? 'bg-primary' : 'bg-secondary-200'\n \"\n ></div>\n <div class=\"flex flex-col py-2 px-4 w-full\">\n <div class=\"flex items-center gap-4 justify-between\">\n <div class=\"grid gap-y-2\">\n <span class=\"font-semibold text-[#404040]\">{{\n item.title\n }}</span>\n <p class=\"flex items-center gap-1\">\n <label for=\"phone\" class=\"text-[10px] font-light\"\n >E-Mail:</label\n >\n <span id=\"phone\" class=\"text-sm\">{{\n item.data.Identifier\n }}</span>\n </p>\n </div>\n\n <!-- <div class=\"grid gap-y-2\">\n <span for=\"role\" class=\"font-light\">{{\n item.data.WorkflowCode\n }}</span>\n <a\n [routerLink]=\"[\n '/workflow/task-history',\n item.data.Code\n ]\"\n routerLinkActive=\"router-link-active\"\n class=\"underline text-[#0000FF] text-xs\"\n >view history</a\n >\n </div> -->\n\n <div class=\"grid gap-y-1\">\n <p class=\"grid\">\n <label\n for=\"role\"\n class=\"text-[10px] font-light text-[#404040]\"\n >Name</label\n >\n <span id=\"role\" class=\"text-sm font-medium\">{{\n item.data?.Name\n }}</span>\n </p>\n </div>\n </div>\n\n <!-- <div class=\"flex\">\n <span class=\"font-normal text-sm\">{{ item.title }}</span>\n </div>\n @for (ciItem of item.body; track ciItem.value) {\n <div class=\"\">\n <span class=\"text-muted font-light text-xs\"\n >{{ ciItem.title }}:</span\n >\n <span class=\"text-black\">{{ ciItem.value }}</span>\n </div>\n } -->\n </div>\n </div>\n </div>\n </ng-template>\n </verben-left-card-data>\n </verben-left-card-data-view>\n\n <verben-right-card-data-view>\n <ng-template #parent>\n <!-- <lib-user-request-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onApproval)=\"onApprove($event)\"\n ></lib-user-request-form> -->\n <actors-form\n [currentData]=\"currentData\"\n (switchView)=\"vdv.toggleView()\"\n (onSave)=\"onSave($event)\"\n ></actors-form>\n </ng-template>\n </verben-right-card-data-view>\n\n <verben-card-data-view-footer class=\"w-full\">\n <div\n [ngClass]=\"{\n 'flex gap-2 items-center': true,\n 'justify-between': true,\n 'justify-end': vdcv.hasCurrentItem()\n }\"\n >\n <!-- <verbena-button\n *ngIf=\"!vdcv.hasCurrentItem()\"\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n <div\n class=\"flex {{\n vdcv.hasCurrentItem() ? 'flex-1' : ''\n }} justify-end items-center gap-5\"\n >\n <span class=\"paginator-text\"\n >{{ cardData().length }} records loaded</span\n >\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n </verben-card-data-view-footer>\n </verben-card-data-view>\n </div>\n <div column-content>\n <lib-data-columns\n [columns]=\"config.columns\"\n (columnsUpdated)=\"onColumnsUpdated($event)\"\n ></lib-data-columns>\n </div>\n <div filter-content>\n <verben-table-filter\n [border]=\"'1px solid rgba(212, 160, 7, 1)'\"\n borderRadius=\"10px\"\n boxShadow=\"2px 2px 2px 0px silver\"\n bgColor=\"white\"\n width=\"420px\"\n textColor=\"black\"\n pd=\"1rem\"\n primaryColor=\"#FFE681\"\n secondaryColor=\"#3479E9\"\n tertiaryColor=\"#404040\"\n [filterOptions]=\"filterArray\"\n [maxFilterLength]=\"3\"\n ></verben-table-filter>\n </div>\n <div sort-content>\n <lib-data-sort\n [columns]=\"config.columns\"\n [data]=\"data()\"\n (sortApplied)=\"onSortUpdated($event)\"\n ></lib-data-sort>\n </div>\n <div export-content>\n <lib-data-export [data]=\"data()\" (exportDataEvent)=\"handleExport($event)\">\n </lib-data-export>\n </div>\n </verben-data-view>\n\n <div *ngIf=\"vdv.isTableView\" class=\"flex gap-2 justify-between\">\n <div class=\"message-log-button-container flex justify-between\">\n <!-- <verbena-button\n [fontWeight]=\"'bold'\"\n [bgColor]=\"'#8E8D87'\"\n [borderRadius]=\"'4px'\"\n [textColor]=\"'#fff'\"\n [pd]=\"'9.79px 37.28px'\"\n [text]=\"'Delete'\"\n >\n </verbena-button> -->\n </div>\n <div class=\"flex justify-end items-center gap-5\">\n <span class=\"paginator-text\">{{ cardData().length }} records loaded</span>\n <button\n (click)=\"loadMore()\"\n class=\"load-more view-links text-[#3479E9] underline\"\n >\n Load more\n </button>\n </div>\n </div>\n</div>\n" }]
|
|
108
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.ActorFacade }, { type: i2.FormBuilder }] });
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0b3JzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi13b3JrZmxvdy11aS9zcmMvbGliL2NvbXBvbmVudHMvYWN0b3JzL2FjdG9ycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4td29ya2Zsb3ctdWkvc3JjL2xpYi9jb21wb25lbnRzL2FjdG9ycy9hY3RvcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFHekYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSzNDLE9BQU8sRUFBNEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFPdEUsTUFBTSxPQUFPLGVBQWdCLFNBQVEscUJBQTRCO0lBdUJyRDtJQUNBO0lBQ0E7SUF4QlYsTUFBTSxHQUEwQjtRQUM5QixVQUFVLEVBQUUsRUFBRSxFQUFFLHdCQUF3QjtRQUN4QyxPQUFPLEVBQUUsT0FBTyxFQUFFLG1DQUFtQztRQUNyRCxjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUIsUUFBUSxFQUFFLEtBQUs7WUFDZixLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJO1lBQzFCLElBQUksRUFBRSxLQUFLO1lBQ1gsSUFBSSxFQUFFO2dCQUNKLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDcEMsNENBQTRDO2FBQzdDO1lBQ0QsUUFBUSxFQUFFLEVBQUU7U0FDYixDQUFDO1FBQ0YsWUFBWSxFQUFFLENBQUMsS0FBSyxF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bEdVLGVBQWU7NEZBQWYsZUFBZSx5RUN0QjVCLHE4VkFxVUE7OzRGRC9TYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBzaWduYWwsXG4gIFZpZXdDaGlsZCxcbiAgV3JpdGFibGVTaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZURhdGFWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS1kYXRhLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEFjdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0FjdG9yJztcbmltcG9ydCB7IERhdGFWaWV3Q29uZmlnIH0gZnJvbSAnLi4vLi4vc2hhcmVkL21vZGVscy9EYXRhVmlld0NvbmZpZyc7XG5pbXBvcnQgeyBjb2x1bW5zIH0gZnJvbSAnLi9hY3RvcnMuY29sdW1ucyc7XG5pbXBvcnQgeyBBY3Rvck1vZGVsIH0gZnJvbSAnLi9hY3RvcnMubW9kZWwnO1xuaW1wb3J0IHsgQ2FyZERhdGEsIEZvcm1Hcm91cENvbmZpZyB9IGZyb20gJ3ZlcmJlbi1uZy11aSc7XG5pbXBvcnQgeyBBY3RvckZhY2FkZSB9IGZyb20gJy4vYWN0b3JzLmZhY2FkZSc7XG5pbXBvcnQgeyBUYWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvVGFnJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFjdG9ycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3RvcnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYWN0b3JzLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBBY3RvcnNDb21wb25lbnQgZXh0ZW5kcyBCYXNlRGF0YVZpZXdDb21wb25lbnQ8QWN0b3I+IHtcbiAgY29uZmlnOiBEYXRhVmlld0NvbmZpZzxBY3Rvcj4gPSB7XG4gICAgZGF0YVNvdXJjZTogW10sIC8vIFBvcHVsYXRlIGZyb20gc2VydmljZVxuICAgIGNvbHVtbnM6IGNvbHVtbnMsIC8vIFlvdXIgZXhpc3RpbmcgY29sdW1uIGRlZmluaXRpb25zXG4gICAgY2FyZERhdGFNYXBwZXI6IChhY3RvcikgPT4gKHtcbiAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgIHRpdGxlOiBhY3Rvci5UYWdzWzBdPy5OYW1lLFxuICAgICAgZGF0YTogYWN0b3IsXG4gICAgICBib2R5OiBbXG4gICAgICAgIHsgdGl0bGU6ICdOYW1lJywgdmFsdWU6IGFjdG9yLk5hbWUgfSxcbiAgICAgICAgLy8geyB0aXRsZTogJ1N0YXR1cycsIHZhbHVlOiBhY3Rvci5TdGF0dXMgfSxcbiAgICAgIF0sXG4gICAgICBjaGlsZHJlbjogW10sXG4gICAgfSksXG4gICAgb25EZXRhaWxWaWV3OiAoYWN0b3IpID0+IHtcbiAgICAgIC8vIEN1c3RvbSBkZXRhaWwgdmlldyBsb2dpY1xuICAgIH0sXG4gIH07XG5cbiAgdGFnczogV3JpdGFibGVTaWduYWw8VGFnW10+ID0gc2lnbmFsKFtdKTtcbiAgZm9ybUdyb3VwQ29uZmlnOiBXcml0YWJsZVNpZ25hbDxGb3JtR3JvdXBDb25maWc8YW55Pj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZmFjYWRlOiBBY3RvckZhY2FkZSxcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlclxuICApIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5mb3JtR3JvdXBDb25maWcgPSBzaWduYWwoe1xuICAgICAgY29udHJvbHM6IHtcbiAgICAgICAgTmFtZTogdGhpcy5mYi5jb250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxuICAgICAgICBJZGVudGlmaWVyOiB0aGlzLmZiLmNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXG4gICAgICAgIFRhZ3M6IHRoaXMuZmIuY29udHJvbChbXSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICAgIH0sXG4gICAgICAvLyB2YWxpZGF0b3JPck9wdHM6IG51bGwsXG4gICAgICAvLyBhc3luY1ZhbGlkYXRvcjogbnVsbCxcbiAgICB9KTtcblxuICAgIHRoaXMuZmFjYWRlLmdldFJlcXVlc3RzJCgpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xuICAgICAgdGhpcy5kYXRhLnNldChkYXRhKTtcbiAgICB9KTtcblxuICAgIHRoaXMuZmFjYWRlLmdldFRhZ3MkKCkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICB0aGlzLnRhZ3Muc2V0KGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbG9hZEluaXRpYWxEYXRhKCkge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmZhY2FkZS5sb2FkUmVxdWVzdHMoKTtcbiAgICAgIHRoaXMuZmFjYWRlLmxvYWRUYWdzKCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIEhhbmRsZSBlcnJvclxuICAgIH1cbiAgfVxuXG4gIC8vIGdlbmVyYXRlRm9ybUdyb3VwKGRhdGE/OiBQYXJ0aWFsPEFjdG9yPikge1xuICAvLyAgIGNvbnNvbGUubG9nKGRhdGEpO1xuICAvLyAgIGNvbnN0IGZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgLy8gICAgIE5hbWU6IG5ldyBGb3JtQ29udHJvbChkYXRhPy5OYW1lID8/ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxuICAvLyAgICAgSWRlbnRpZmllcjogbmV3IEZvcm1Db250cm9sKGRhdGE/LklkZW50aWZpZXIgPz8gJycsIFtcbiAgLy8gICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgLy8gICAgIF0pLFxuICAvLyAgICAgVGFnczogbmV3IEZvcm1Db250cm9sKGRhdGE/LlRhZ3MgPz8gW10sIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXG4gIC8vICAgfSk7XG4gIC8vICAgLy8gY29uc29sZS5sb2coZm9ybS52YWx1ZSk7XG4gIC8vICAgcmV0dXJuIGZvcm07XG4gIC8vIH1cblxuICAvLyBnZXRGb3JtQ29udHJvbChpbmRleDogbnVtYmVyLCBmaWVsZDogc3RyaW5nKSB7XG4gIC8vICAgY29uc3QgY29udHJvbCA9IHRoaXMuZWRpdEZvcm1zLmdldChpbmRleCk/LmdldChmaWVsZCkgYXMgRm9ybUNvbnRyb2w8YW55PjtcbiAgLy8gICBjb25zb2xlLmxvZyhjb250cm9sKTtcbiAgLy8gICByZXR1cm4gY29udHJvbDtcbiAgLy8gfVxuXG4gIC8vIGlzUm93VmFsaWQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAvLyAgIHJldHVybiB0aGlzLmVkaXRGb3Jtcy5nZXQoaW5kZXgpPy52YWxpZCB8fCBmYWxzZTtcbiAgLy8gfVxuXG4gIHByb3RlY3RlZCBnZXRDYXJkRGF0YUJ5SWRlbnRpZmllcihjb2RlOiBzdHJpbmcpOiBDYXJkRGF0YSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY2FyZERhdGEoKT8uZmluZCgoeyBkYXRhIH0pID0+IGRhdGEuZGF0YS5Db2RlID09PSBjb2RlKTtcbiAgfVxuXG4gIGFzeW5jIGxvYWRNb3JlKCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmZhY2FkZS5sb2FkTW9yZSgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBIYW5kbGUgZXJyb3JcbiAgICB9XG4gIH1cblxuICBhc3luYyBvblNhdmUoZGF0YTogUGFydGlhbDxBY3Rvcj4pIHtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgLi4udGhpcy5jdXJyZW50RGF0YT8uZGF0YSxcbiAgICAgIC4uLmRhdGEsXG4gICAgfSBhcyBBY3RvcjtcbiAgICBhd2FpdCB0aGlzLmZhY2FkZS5hZGRSZXF1ZXN0KHBheWxvYWQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic3BhY2UteS04XCI+XG4gIDx2ZXJiZW4tZGF0YS12aWV3XG4gICAgI3ZkdlxuICAgIFt2aWV3U3RhdGVdPVwie1xuICAgICAgaXNTZWFyY2g6IHRydWUsXG4gICAgICBpc0NvbHVtbjogdHJ1ZSxcbiAgICAgIGlzRmlsdGVyOiB0cnVlLFxuICAgICAgaXNTb3J0OiB0cnVlLFxuICAgICAgaXNFeHBvcnQ6IHRydWUsXG4gICAgICBpc1NlbGVjdDogdHJ1ZSxcbiAgICAgIGlzQ3JlYXRlOiBmYWxzZSxcbiAgICAgIGlzVG9nZ2xlOiB0cnVlLFxuICAgIH1cIlxuICAgIFtidXR0b25DbGFzc109XCInbXktY3VzdG9tLWJ1dHRvbi1jbGFzcydcIlxuICAgIFtpY29uQ2xhc3NdPVwiJ215LWljb24tY2xhc3MnXCJcbiAgICBbYWN0aXZlSWNvbkNsYXNzXT1cIidteS1hY3RpdmUtaWNvbi1jbGFzcydcIlxuICAgIFtzZWxlY3RlZENvbHVtbkNvdW50XT1cIjBcIlxuICAgIFtzZWxlY3RlZFNvcnRDb3VudF09XCIwXCJcbiAgICBbc2VsZWN0ZWRGaWx0ZXJUYWJsZUNvdW50XT1cIjBcIlxuICAgICh2aWV3Q2hhbmdlKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQpXCJcbiAgICAoc3RhdGVDaGFuZ2UpPVwib25TdGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPlxuICAgIDxkaXYgdGFibGUtY29udGVudD5cbiAgICAgIDxsaWItZGF0YS10YWJsZVxuICAgICAgICBbZGF0YV09XCJkYXRhKClcIlxuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIFtzdHlsZUNvbmZpZ109XCJzdHlsZXNcIlxuICAgICAgICBbZm9ybUdyb3VwQ29uZmlnXT1cImZvcm1Hcm91cENvbmZpZygpXCJcbiAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKHJvd1NhdmUpPVwib25TYXZlKCRldmVudC5kYXRhKVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgbGliQ29sdW1uPVwiZGF0ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2VsbCBsZXQtcm93PVwicm93XCIgbGV0LXZhbHVlPlxuICAgICAgICAgICAge3sgdmFsdWUgfCBkYXRlIH19XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBsaWJDb2x1bW49XCJuYW1lXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNjZWxsRWRpdCBsZXQtY29udHJvbD1cImNvbnRyb2xcIj5cbiAgICAgICAgICAgIDx2ZXJiZW5hLWlucHV0XG4gICAgICAgICAgICAgIG5hbWU9XCJOYW1lXCJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgICAgICAgICAgICBwbGFjZUhvbGRlcj1cIkVudGVyIE5hbWVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyIGxpYkNvbHVtbj1cInRhZ3NcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2NlbGxFZGl0IGxldC1jb250cm9sPVwiY29udHJvbFwiPlxuICAgICAgICAgICAgPHZlcmJlbi1kcm9wLWRvd25cbiAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInctZnVsbFwiXG4gICAgICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgICAgICAgIFttdWx0aXNlbGVjdF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IHRhZ3NcIlxuICAgICAgICAgICAgICBbb3B0aW9uc109XCJ0YWdzKClcIlxuICAgICAgICAgICAgICBvcHRpb25MYWJlbD1cIk5hbWVcIlxuICAgICAgICAgICAgICBpZD1cInRhZ3NcIlxuICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvdmVyYmVuLWRyb3AtZG93bj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyIGxpYkNvbHVtbj1cImFjdGlvbnNcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICNjZWxsXG4gICAgICAgICAgICBsZXQtdmFsdWVcbiAgICAgICAgICAgIGxldC1pc0VkaXRpbmc9XCJpc0VkaXRpbmdcIlxuICAgICAgICAgICAgbGV0LXRvZ2dsZVJvd0VkaXQ9XCJ0b2dnbGVSb3dFZGl0XCJcbiAgICAgICAgICAgIGxldC1kZWxldGVSb3c9XCJkZWxldGVSb3dcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC02XCI+XG4gICAgICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVJvd0VkaXQoKVwiXG4gICAgICAgICAgICAgICAgaWNvbj1cImVkaXRcIlxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCIxNVwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCIxNVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG5cbiAgICAgICAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAgICAgICBpY29uPVwiZGVsZXRlXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiMTVcIlxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiMTVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkZWxldGVSb3coKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAjY2VsbEVkaXRcbiAgICAgICAgICAgIGxldC12YWx1ZVxuICAgICAgICAgICAgbGV0LWRlbGV0ZVJvd1xuICAgICAgICAgICAgbGV0LWlzRWRpdGluZz1cImlzRWRpdGluZ1wiXG4gICAgICAgICAgICBsZXQtdG9nZ2xlUm93RWRpdD1cInRvZ2dsZVJvd0VkaXRcIlxuICAgICAgICAgICAgbGV0LXJvdz1cInJvd1wiXG4gICAgICAgICAgICBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTZcIj5cbiAgICAgICAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUm93RWRpdCgpXCJcbiAgICAgICAgICAgICAgICBpY29uPVwidGlja1wiXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cIjE1XCJcbiAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgPjwvdmVyYmVuLXN2Zz5cblxuICAgICAgICAgICAgICA8dmVyYmVuLXN2Z1xuICAgICAgICAgICAgICAgIGljb249XCJkZWxldGVcIlxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCIxNVwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCIxNVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVJvd0VkaXQoKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbGliLWRhdGEtdGFibGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjYXJkLWNvbnRlbnQ+XG4gICAgICA8dmVyYmVuLWNhcmQtZGF0YS12aWV3XG4gICAgICAgIGJvcmRlclJhZGl1cz1cIjEycHhcIlxuICAgICAgICAobG9hZE1vcmVDbGljayk9XCJsb2FkTW9yZSgpXCJcbiAgICAgICAgI3ZkY3ZcbiAgICAgICAgZGF0YUlkPVwiSWRcIlxuICAgICAgICBib3JkZXI9XCI1cHhcIlxuICAgICAgICBbY2FyZERhdGFMaXN0XT1cImNhcmREYXRhKClcIlxuICAgICAgICByYmdDb2xvcj1cIiNmNWY2ZjlcIlxuICAgICAgICBtZz1cIjIwcHhcIlxuICAgICAgPlxuICAgICAgICA8dmVyYmVuLWxlZnQtY2FyZC1kYXRhLXZpZXcgY2xhc3M9XCJzcGFjZS15LTdcIj5cbiAgICAgICAgICA8dmVyYmVuLWxlZnQtY2FyZC1kYXRhXG4gICAgICAgICAgICAjdmxjZFxuICAgICAgICAgICAgW3BhcmVudF09XCJ2ZGN2XCJcbiAgICAgICAgICAgIGRhdGFJZD1cIklkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYmctc2Vjb25kYXJ5LTEwMCByb3VuZGVkLXhsIGJvcmRlci1wcmltYXJ5IGJvcmRlci1bMXB4XVwiXG4gICAgICAgICAgICBbY2FyZERhdGFMaXN0XT1cImNhcmREYXRhKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2FyZCBsZXQtaXRlbT5cbiAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiY3VycmVudERhdGEgPSB2ZGN2Lm9uSXRlbUNsaWNrKGl0ZW0pXCIgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImN1cnJlbnREYXRhID0gdmRjdi5vbkl0ZW1DbGljayhpdGVtKVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXggY3Vyc29yLXBvaW50ZXIgdy1mdWxsIGJnLXNlY29uZGFyeSByb3VuZGVkLXhsXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidy0zIHJvdW5kZWQteGwgcm91bmRlZC10ci1ub25lIHJvdW5kZWQtYnItbm9uZVwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPyAnYmctcHJpbWFyeScgOiAnYmctc2Vjb25kYXJ5LTIwMCdcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHB5LTIgcHgtNCB3LWZ1bGxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC00IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGdhcC15LTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1zZW1pYm9sZCB0ZXh0LVsjNDA0MDQwXVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udGl0bGVcbiAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGhvbmVcIiBjbGFzcz1cInRleHQtWzEwcHhdIGZvbnQtbGlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5FLU1haWw6PC9sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwicGhvbmVcIiBjbGFzcz1cInRleHQtc21cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uZGF0YS5JZGVudGlmaWVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZ3JpZCBnYXAteS0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmb3I9XCJyb2xlXCIgY2xhc3M9XCJmb250LWxpZ2h0XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5kYXRhLldvcmtmbG93Q29kZVxuICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJy93b3JrZmxvdy90YXNrLWhpc3RvcnknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uZGF0YS5Db2RlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwicm91dGVyLWxpbmstYWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1bmRlcmxpbmUgdGV4dC1bIzAwMDBGRl0gdGV4dC14c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID52aWV3IGhpc3Rvcnk8L2FcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBnYXAteS0xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImdyaWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwicm9sZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LVsxMHB4XSBmb250LWxpZ2h0IHRleHQtWyM0MDQwNDBdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+TmFtZTwvbGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInJvbGVcIiBjbGFzcz1cInRleHQtc20gZm9udC1tZWRpdW1cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uZGF0YT8uTmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ub3JtYWwgdGV4dC1zbVwiPnt7IGl0ZW0udGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChjaUl0ZW0gb2YgaXRlbS5ib2R5OyB0cmFjayBjaUl0ZW0udmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1tdXRlZCBmb250LWxpZ2h0IHRleHQteHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGNpSXRlbS50aXRsZSB9fTo8L3NwYW5cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWJsYWNrXCI+e3sgY2lJdGVtLnZhbHVlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfSAtLT5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC92ZXJiZW4tbGVmdC1jYXJkLWRhdGE+XG4gICAgICAgIDwvdmVyYmVuLWxlZnQtY2FyZC1kYXRhLXZpZXc+XG5cbiAgICAgICAgPHZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlldz5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3BhcmVudD5cbiAgICAgICAgICAgIDwhLS0gPGxpYi11c2VyLXJlcXVlc3QtZm9ybVxuICAgICAgICAgICAgICBbY3VycmVudERhdGFdPVwiY3VycmVudERhdGFcIlxuICAgICAgICAgICAgICAoc3dpdGNoVmlldyk9XCJ2ZHYudG9nZ2xlVmlldygpXCJcbiAgICAgICAgICAgICAgKG9uQXBwcm92YWwpPVwib25BcHByb3ZlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvbGliLXVzZXItcmVxdWVzdC1mb3JtPiAtLT5cbiAgICAgICAgICAgIDxhY3RvcnMtZm9ybVxuICAgICAgICAgICAgICBbY3VycmVudERhdGFdPVwiY3VycmVudERhdGFcIlxuICAgICAgICAgICAgICAoc3dpdGNoVmlldyk9XCJ2ZHYudG9nZ2xlVmlldygpXCJcbiAgICAgICAgICAgICAgKG9uU2F2ZSk9XCJvblNhdmUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9hY3RvcnMtZm9ybT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3ZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlldz5cblxuICAgICAgICA8dmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlciBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ2ZsZXggZ2FwLTIgaXRlbXMtY2VudGVyJzogdHJ1ZSxcbiAgICAgICAgICAgICAgJ2p1c3RpZnktYmV0d2Vlbic6IHRydWUsXG4gICAgICAgICAgICAgICdqdXN0aWZ5LWVuZCc6IHZkY3YuaGFzQ3VycmVudEl0ZW0oKVxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPCEtLSA8dmVyYmVuYS1idXR0b25cbiAgICAgICAgICAgICAgKm5nSWY9XCIhdmRjdi5oYXNDdXJyZW50SXRlbSgpXCJcbiAgICAgICAgICAgICAgW2ZvbnRXZWlnaHRdPVwiJ2JvbGQnXCJcbiAgICAgICAgICAgICAgW2JnQ29sb3JdPVwiJyM4RThEODcnXCJcbiAgICAgICAgICAgICAgW2JvcmRlclJhZGl1c109XCInNHB4J1wiXG4gICAgICAgICAgICAgIFt0ZXh0Q29sb3JdPVwiJyNmZmYnXCJcbiAgICAgICAgICAgICAgW3BkXT1cIic5Ljc5cHggMzcuMjhweCdcIlxuICAgICAgICAgICAgICBbdGV4dF09XCInRGVsZXRlJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3ZlcmJlbmEtYnV0dG9uPiAtLT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IHt7XG4gICAgICAgICAgICAgICAgdmRjdi5oYXNDdXJyZW50SXRlbSgpID8gJ2ZsZXgtMScgOiAnJ1xuICAgICAgICAgICAgICB9fSBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgZ2FwLTVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBhZ2luYXRvci10ZXh0XCJcbiAgICAgICAgICAgICAgICA+e3sgY2FyZERhdGEoKS5sZW5ndGggfX0gcmVjb3JkcyBsb2FkZWQ8L3NwYW5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImxvYWRNb3JlKClcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibG9hZC1tb3JlIHZpZXctbGlua3MgdGV4dC1bIzM0NzlFOV0gdW5kZXJsaW5lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIExvYWQgbW9yZVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3ZlcmJlbi1jYXJkLWRhdGEtdmlldy1mb290ZXI+XG4gICAgICA8L3ZlcmJlbi1jYXJkLWRhdGEtdmlldz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNvbHVtbi1jb250ZW50PlxuICAgICAgPGxpYi1kYXRhLWNvbHVtbnNcbiAgICAgICAgW2NvbHVtbnNdPVwiY29uZmlnLmNvbHVtbnNcIlxuICAgICAgICAoY29sdW1uc1VwZGF0ZWQpPVwib25Db2x1bW5zVXBkYXRlZCgkZXZlbnQpXCJcbiAgICAgID48L2xpYi1kYXRhLWNvbHVtbnM+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBmaWx0ZXItY29udGVudD5cbiAgICAgIDx2ZXJiZW4tdGFibGUtZmlsdGVyXG4gICAgICAgIFtib3JkZXJdPVwiJzFweCBzb2xpZCByZ2JhKDIxMiwgMTYwLCA3LCAxKSdcIlxuICAgICAgICBib3JkZXJSYWRpdXM9XCIxMHB4XCJcbiAgICAgICAgYm94U2hhZG93PVwiMnB4IDJweCAycHggMHB4IHNpbHZlclwiXG4gICAgICAgIGJnQ29sb3I9XCJ3aGl0ZVwiXG4gICAgICAgIHdpZHRoPVwiNDIwcHhcIlxuICAgICAgICB0ZXh0Q29sb3I9XCJibGFja1wiXG4gICAgICAgIHBkPVwiMXJlbVwiXG4gICAgICAgIHByaW1hcnlDb2xvcj1cIiNGRkU2ODFcIlxuICAgICAgICBzZWNvbmRhcnlDb2xvcj1cIiMzNDc5RTlcIlxuICAgICAgICB0ZXJ0aWFyeUNvbG9yPVwiIzQwNDA0MFwiXG4gICAgICAgIFtmaWx0ZXJPcHRpb25zXT1cImZpbHRlckFycmF5XCJcbiAgICAgICAgW21heEZpbHRlckxlbmd0aF09XCIzXCJcbiAgICAgID48L3ZlcmJlbi10YWJsZS1maWx0ZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBzb3J0LWNvbnRlbnQ+XG4gICAgICA8bGliLWRhdGEtc29ydFxuICAgICAgICBbY29sdW1uc109XCJjb25maWcuY29sdW1uc1wiXG4gICAgICAgIFtkYXRhXT1cImRhdGEoKVwiXG4gICAgICAgIChzb3J0QXBwbGllZCk9XCJvblNvcnRVcGRhdGVkKCRldmVudClcIlxuICAgICAgPjwvbGliLWRhdGEtc29ydD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGV4cG9ydC1jb250ZW50PlxuICAgICAgPGxpYi1kYXRhLWV4cG9ydCBbZGF0YV09XCJkYXRhKClcIiAoZXhwb3J0RGF0YUV2ZW50KT1cImhhbmRsZUV4cG9ydCgkZXZlbnQpXCI+XG4gICAgICA8L2xpYi1kYXRhLWV4cG9ydD5cbiAgICA8L2Rpdj5cbiAgPC92ZXJiZW4tZGF0YS12aWV3PlxuXG4gIDxkaXYgKm5nSWY9XCJ2ZHYuaXNUYWJsZVZpZXdcIiBjbGFzcz1cImZsZXggZ2FwLTIganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2UtbG9nLWJ1dHRvbi1jb250YWluZXIgZmxleCBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICAgIDwhLS0gPHZlcmJlbmEtYnV0dG9uXG4gICAgICAgIFtmb250V2VpZ2h0XT1cIidib2xkJ1wiXG4gICAgICAgIFtiZ0NvbG9yXT1cIicjOEU4RDg3J1wiXG4gICAgICAgIFtib3JkZXJSYWRpdXNdPVwiJzRweCdcIlxuICAgICAgICBbdGV4dENvbG9yXT1cIicjZmZmJ1wiXG4gICAgICAgIFtwZF09XCInOS43OXB4IDM3LjI4cHgnXCJcbiAgICAgICAgW3RleHRdPVwiJ0RlbGV0ZSdcIlxuICAgICAgPlxuICAgICAgPC92ZXJiZW5hLWJ1dHRvbj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC01XCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInBhZ2luYXRvci10ZXh0XCI+e3sgY2FyZERhdGEoKS5sZW5ndGggfX0gcmVjb3JkcyBsb2FkZWQ8L3NwYW4+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIChjbGljayk9XCJsb2FkTW9yZSgpXCJcbiAgICAgICAgY2xhc3M9XCJsb2FkLW1vcmUgdmlldy1saW5rcyB0ZXh0LVsjMzQ3OUU5XSB1bmRlcmxpbmVcIlxuICAgICAgPlxuICAgICAgICBMb2FkIG1vcmVcbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { SortDirection } from '../../models/SortDirection';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "./actors.service";
|
|
5
5
|
import * as i2 from "./actors.state";
|
|
@@ -22,9 +22,9 @@ export class ActorFacade {
|
|
|
22
22
|
getRequests$() {
|
|
23
23
|
return this.state.getRequests$();
|
|
24
24
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
getTags$() {
|
|
26
|
+
return this.state.getTags$();
|
|
27
|
+
}
|
|
28
28
|
// getForms$(): Observable<Form[]> {
|
|
29
29
|
// return this.state.getForms$();
|
|
30
30
|
// }
|
|
@@ -102,20 +102,18 @@ export class ActorFacade {
|
|
|
102
102
|
this.state.setUpdating(false);
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
-
async deleteRequest(requestId) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
}
|
|
105
|
+
// async deleteRequest(requestId: string): Promise<void> {
|
|
106
|
+
// try {
|
|
107
|
+
// this.state.setUpdating(true);
|
|
108
|
+
// await lastValueFrom(this.service.deleteActors([requestId]));
|
|
109
|
+
// this.state.removeRequest(requestId);
|
|
110
|
+
// } catch (error) {
|
|
111
|
+
// console.error('Failed to delete request:', error);
|
|
112
|
+
// throw error;
|
|
113
|
+
// } finally {
|
|
114
|
+
// this.state.setUpdating(false);
|
|
115
|
+
// }
|
|
116
|
+
// }
|
|
119
117
|
// async loadWorkflows(): Promise<void> {
|
|
120
118
|
// try {
|
|
121
119
|
// const requests = await this.service.getWorkflows();
|
|
@@ -164,6 +162,18 @@ export class ActorFacade {
|
|
|
164
162
|
this.state.setUpdating(false);
|
|
165
163
|
}
|
|
166
164
|
}
|
|
165
|
+
async loadTags() {
|
|
166
|
+
try {
|
|
167
|
+
const response = await this.service.getTags(0, 0, 'CreatedDate', SortDirection.Desc);
|
|
168
|
+
this.state.setTags(response.Result);
|
|
169
|
+
}
|
|
170
|
+
catch (error) {
|
|
171
|
+
console.error('Failed to load requests:', error);
|
|
172
|
+
throw error;
|
|
173
|
+
}
|
|
174
|
+
finally {
|
|
175
|
+
}
|
|
176
|
+
}
|
|
167
177
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActorFacade, deps: [{ token: i1.ActorService }, { token: i2.ActorState }, { token: i3.UtilService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
168
178
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActorFacade, providedIn: 'root' });
|
|
169
179
|
}
|
|
@@ -173,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
173
183
|
providedIn: 'root',
|
|
174
184
|
}]
|
|
175
185
|
}], ctorParameters: () => [{ type: i1.ActorService }, { type: i2.ActorState }, { type: i3.UtilService }] });
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0b3JzLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi13b3JrZmxvdy11aS9zcmMvbGliL2NvbXBvbmVudHMvYWN0b3JzL2FjdG9ycy5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQVlqRCxNQUFNLE9BQU8sV0FBVztJQUVaO0lBQ0E7SUFDQTtJQUhWLFlBQ1UsT0FBcUIsRUFDckIsS0FBaUIsRUFDakIsV0FBd0I7UUFGeEIsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUNyQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRWhDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCw2Q0FBNkM7SUFDN0MseUNBQXlDO0lBQ3pDLE1BQU07SUFFTixzQ0FBc0M7SUFDdEMscUNBQXFDO0lBQ3JDLE1BQU07SUFFTixlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBVztRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMs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QztZQUVGLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDO2dCQUMzQixJQUFJLEVBQUUsT0FBTztnQkFDYixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7YUFDM0IsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzFDLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNILENBQUM7d0dBM0xVLFdBQVc7NEdBQVgsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0b3JTZXJ2aWNlIH0gZnJvbSAnLi9hY3RvcnMuc2VydmljZSc7XG5pbXBvcnQgeyBBY3RvclN0YXRlIH0gZnJvbSAnLi9hY3RvcnMuc3RhdGUnO1xuaW1wb3J0IHsgQWN0b3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvQWN0b3InO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlcnktcGFyYW1zJztcbmltcG9ydCB7IFdvcmtmbG93IH0gZnJvbSAnLi4vLi4vbW9kZWxzL1dvcmtmbG93JztcbmltcG9ydCB7IEZvcm0gfSBmcm9tICcuLi8uLi9tb2RlbHMvRm9ybSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBY3RvckZhY2FkZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2VydmljZTogQWN0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RhdGU6IEFjdG9yU3RhdGUsXG4gICAgcHJpdmF0ZSB1dGlsU2VydmljZTogVXRpbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pc1VwZGF0aW5nJCgpLnN1YnNjcmliZSgobG9hZGluZykgPT4ge1xuICAgICAgdGhpcy51dGlsU2VydmljZS5zZW5kQkkobG9hZGluZyk7XG4gICAgfSk7XG4gIH1cblxuICBpc1VwZGF0aW5nJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5pc1VwZGF0aW5nJCgpO1xuICB9XG5cbiAgZ2V0UmVxdWVzdHMkKCk6IE9ic2VydmFibGU8QWN0b3JbXT4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLmdldFJlcXVlc3RzJCgpO1xuICB9XG5cbiAgLy8gICBnZXRXb3JrZmxvdyQoKTogT2JzZXJ2YWJsZTxXb3JrZmxvd1tdPiB7XG4gIC8vICAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRXb3JrZmxvd3MkKCk7XG4gIC8vICAgfVxuXG4gIC8vICAgZ2V0Rm9ybXMkKCk6IE9ic2VydmFibGU8Rm9ybVtdPiB7XG4gIC8vICAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRGb3JtcyQoKTtcbiAgLy8gICB9XG5cbiAgZ2V0UXVlcnlQYXJhbXMkKCk6IE9ic2VydmFibGU8UXVlcnlQYXJhbXM8QWN0b3I+PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuZ2V0UXVlcnlQYXJhbXMkKCk7XG4gIH1cblxuICBhZGROZXdSZXF1ZXN0KHRhc2s6IEFjdG9yKSB7XG4gICAgdGhpcy5zdGF0ZS5hZGRSZXF1ZXN0KHRhc2spO1xuICB9XG5cbiAgYXN5bmMgbG9hZFJlcXVlc3RzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldERhdGEoXG4gICAgICAgIHBhcmFtcy5za2lwLFxuICAgICAgICBwYXJhbXMubGltaXQsXG4gICAgICAgIHBhcmFtcy5zb3J0UGFyYW0gfHwgJ2NyZWF0ZWREYXRlJyxcbiAgICAgICAgcGFyYW1zLnNvcnRPcmRlclxuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXRSZXF1ZXN0cyhyZXF1ZXN0cy5SZXN1bHQpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVRdWVyeVBhcmFtcyh7IHNraXA6IHJlcXVlc3RzLlNraXAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBsb2FkUmVxdWVzdHNXaXRoUGFyYW0ocGFyYW06IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG5cbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldEFjdG9yV2l0aFBhcmFtKFxuICAgICAgICBwYXJhbSxcbiAgICAgICAgcGFyYW1zLnNraXAsXG4gICAgICAgIHBhcmFtcy5saW1pdCxcbiAgICAgICAgcGFyYW1zLnNvcnRQYXJhbSB8fCAnQ3JlYXRlZERhdGUnLFxuICAgICAgICBwYXJhbXMuc29ydE9yZGVyXG4gICAgICApO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldFJlcXVlc3RzKHJlcXVlc3RzLlJlc3VsdCk7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHsgc2tpcDogcmVxdWVzdHMuU2tpcCB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlUXVlcnlQYXJhbXMocGFyYW1zOiBQYXJ0aWFsPFF1ZXJ5UGFyYW1zPEFjdG9yPj4pOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHBhcmFtcyk7XG4gICAgLy8gdGhpcy5sb2FkUmVxdWVzdHMoKTtcbiAgfVxuXG4gIGFzeW5jIGFkZFJlcXVlc3QocmVxdWVzdDogUGFydGlhbDxBY3Rvcj4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IG5ld1JlcXVlc3QgPSB7IC4uLnJlcXVlc3QsIEFjdG9yRm9ybXM6IFtdIH0gYXMgQWN0b3I7XG4gICAgICAvLyB0aGlzLnN0YXRlLmFkZFJlcXVlc3QobmV3UmVxdWVzdCk7XG5cbiAgICAgIGF3YWl0IHRoaXMuc2VydmljZS5zYXZlQWN0b3JzKFtuZXdSZXF1ZXN0XSk7XG4gICAgICB0aGlzLnN0YXRlLnJlc2V0UGFnaW5hdGlvbigpO1xuICAgICAgYXdhaXQgdGhpcy5sb2FkUmVxdWVzdHMoKTsgLy8gUmVsb2FkIHRvIGdldCBzZXJ2ZXItc2lkZSBjaGFuZ2VzXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBhZGQgcmVxdWVzdDonLCBlcnJvcik7XG4gICAgICB0aGlzLnN0YXRlLnJlbW92ZVJlcXVlc3QocmVxdWVzdC5Db2RlISk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgdXBkYXRlUmVxdWVzdChyZXF1ZXN0OiBBY3Rvcik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgYXdhaXQgdGhpcy5zZXJ2aWNlLnNhdmVBY3RvcnMoW3JlcXVlc3RdKTtcbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlUmVxdWVzdChyZXF1ZXN0KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHVwZGF0ZSByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkZWxldGVSZXF1ZXN0KHJlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5kZWxldGVBY3RvcnMoW3JlcXVlc3RJZF0pKTtcbiAgICAgIHRoaXMuc3RhdGUucmVtb3ZlUmVxdWVzdChyZXF1ZXN0SWQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZGVsZXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vICAgYXN5bmMgbG9hZFdvcmtmbG93cygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gICAgIHRyeSB7XG4gIC8vICAgICAgIGNvbnN0IHJlcXVlc3RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldFdvcmtmbG93cygpO1xuXG4gIC8vICAgICAgIHRoaXMuc3RhdGUuc2V0V29ya2Zsb3dzKHJlcXVlc3RzLlJlc3VsdCk7XG4gIC8vICAgICB9IGNhdGNoIChlcnJvcikge1xuICAvLyAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0czonLCBlcnJvcik7XG4gIC8vICAgICAgIHRocm93IGVycm9yO1xuICAvLyAgICAgfSBmaW5hbGx5IHtcbiAgLy8gICAgIH1cbiAgLy8gICB9XG5cbiAgLy8gICBhc3luYyBsb2FkRm9ybXNXaXRoUGFyYW0ocGFyYW06IHN0cmluZyk6IFByb21pc2U8Rm9ybSB8IHZvaWQ+IHtcbiAgLy8gICAgIHRyeSB7XG4gIC8vICAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG5cbiAgLy8gICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0Rm9ybVdpdGhQYXJhbShwYXJhbSk7XG5cbiAgLy8gICAgICAgY29uc3QgZm9ybSA9IHJlcXVlc3RzLlJlc3VsdFswXTtcbiAgLy8gICAgICAgaWYgKGZvcm0pIHJldHVybiBmb3JtO1xuICAvLyAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgLy8gICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHMgd2l0aCBwYXJhbTonLCBlcnJvcik7XG4gIC8vICAgICAgIHRocm93IGVycm9yO1xuICAvLyAgICAgfSBmaW5hbGx5IHtcbiAgLy8gICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gIC8vICAgICB9XG4gIC8vICAgfVxuXG4gIC8vIExvYWQgbW9yZSBoYW5kbGluZ1xuICBhc3luYyBsb2FkTW9yZShxdWV1ZTogYm9vbGVhbiA9IGZhbHNlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBjdXJyZW50UGFyYW1zID0gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtc1ZhbHVlKCk7XG4gICAgICAvLyBjb25zdCBzZWFyY2hUZXJtID0gdGhpcy5zdGF0ZS5nZXRTZWFyY2hUZXJtVmFsdWUoKTtcbiAgICAgIGNvbnN0IHNlYXJjaFRlcm0gPSBmYWxzZTtcblxuICAgICAgLy8gVXBkYXRlIHNraXAgdmFsdWVcbiAgICAgIGNvbnN0IG5ld1NraXAgPSBjdXJyZW50UGFyYW1zLnNraXAgKyBjdXJyZW50UGFyYW1zLmxpbWl0O1xuXG4gICAgICAvLyBMb2FkIGFuZCBhcHBlbmQgZGF0YVxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0RGF0YShcbiAgICAgICAgY3VycmVudFBhcmFtcy5za2lwLFxuICAgICAgICBjdXJyZW50UGFyYW1zLmxpbWl0LFxuICAgICAgICBjdXJyZW50UGFyYW1zLnNvcnRQYXJhbSB8fCAnY3JlYXRlZERhdGUnLFxuICAgICAgICBjdXJyZW50UGFyYW1zLnNvcnRPcmRlclxuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5hcHBlbmRSZXF1ZXN0cyhyZXNwb25zZS5SZXN1bHQpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVRdWVyeVBhcmFtcyh7XG4gICAgICAgIHNraXA6IG5ld1NraXAsXG4gICAgICAgIGxpbWl0OiBjdXJyZW50UGFyYW1zLmxpbWl0LFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0xvYWQgbW9yZSBmYWlsZWQ6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0b3JzLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi13b3JrZmxvdy11aS9zcmMvbGliL2NvbXBvbmVudHMvYWN0b3JzL2FjdG9ycy5mYWNhZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBSzNELE1BQU0sT0FBTyxXQUFXO0lBRVo7SUFDQTtJQUNBO0lBSFYsWUFDVSxPQUFxQixFQUNyQixLQUFpQixFQUNqQixXQUF3QjtRQUZ4QixZQUFPLEdBQVAsT0FBTyxDQUFjO1FBQ3JCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFFaEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxxQ0FBcUM7SUFDckMsTUFBTTtJQUVOLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFXO1FBQ3ZCLElBQUksQ0FB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Q0FBQztZQUMxQyxNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUM7WUFDSCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUN6QyxDQUFDLEVBQ0QsQ0FBQyxFQUNELGFBQWEsRUFDYixhQUFhLENBQUMsSUFBSSxDQUNuQixDQUFDO1lBRUYsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNqRCxNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7Z0JBQVMsQ0FBQztRQUNYLENBQUM7SUFDSCxDQUFDO3dHQTVNVSxXQUFXOzRHQUFYLFdBQVcsY0FGVixNQUFNOzs0RkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGxhc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IEFjdG9yU2VydmljZSB9IGZyb20gJy4vYWN0b3JzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0b3JTdGF0ZSB9IGZyb20gJy4vYWN0b3JzLnN0YXRlJztcbmltcG9ydCB7IEFjdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0FjdG9yJztcbmltcG9ydCB7IFF1ZXJ5UGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3F1ZXJ5LXBhcmFtcyc7XG5pbXBvcnQgeyBXb3JrZmxvdyB9IGZyb20gJy4uLy4uL21vZGVscy9Xb3JrZmxvdyc7XG5pbXBvcnQgeyBGb3JtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0Zvcm0nO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1RhZyc7XG5pbXBvcnQgeyBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1NvcnREaXJlY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQWN0b3JGYWNhZGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNlcnZpY2U6IEFjdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHN0YXRlOiBBY3RvclN0YXRlLFxuICAgIHByaXZhdGUgdXRpbFNlcnZpY2U6IFV0aWxTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaXNVcGRhdGluZyQoKS5zdWJzY3JpYmUoKGxvYWRpbmcpID0+IHtcbiAgICAgIHRoaXMudXRpbFNlcnZpY2Uuc2VuZEJJKGxvYWRpbmcpO1xuICAgIH0pO1xuICB9XG5cbiAgaXNVcGRhdGluZyQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuaXNVcGRhdGluZyQoKTtcbiAgfVxuXG4gIGdldFJlcXVlc3RzJCgpOiBPYnNlcnZhYmxlPEFjdG9yW10+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRSZXF1ZXN0cyQoKTtcbiAgfVxuXG4gIGdldFRhZ3MkKCk6IE9ic2VydmFibGU8VGFnW10+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRUYWdzJCgpO1xuICB9XG5cbiAgLy8gICBnZXRGb3JtcyQoKTogT2JzZXJ2YWJsZTxGb3JtW10+IHtcbiAgLy8gICAgIHJldHVybiB0aGlzLnN0YXRlLmdldEZvcm1zJCgpO1xuICAvLyAgIH1cblxuICBnZXRRdWVyeVBhcmFtcyQoKTogT2JzZXJ2YWJsZTxRdWVyeVBhcmFtczxBY3Rvcj4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXRRdWVyeVBhcmFtcyQoKTtcbiAgfVxuXG4gIGFkZE5ld1JlcXVlc3QodGFzazogQWN0b3IpIHtcbiAgICB0aGlzLnN0YXRlLmFkZFJlcXVlc3QodGFzayk7XG4gIH1cblxuICBhc3luYyBsb2FkUmVxdWVzdHMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0RGF0YShcbiAgICAgICAgcGFyYW1zLnNraXAsXG4gICAgICAgIHBhcmFtcy5saW1pdCxcbiAgICAgICAgcGFyYW1zLnNvcnRQYXJhbSB8fCAnY3JlYXRlZERhdGUnLFxuICAgICAgICBwYXJhbXMuc29ydE9yZGVyXG4gICAgICApO1xuXG4gICAgICB0aGlzLnN0YXRlLnNldFJlcXVlc3RzKHJlcXVlc3RzLlJlc3VsdCk7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHsgc2tpcDogcmVxdWVzdHMuU2tpcCB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGxvYWQgcmVxdWVzdHM6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGxvYWRSZXF1ZXN0c1dpdGhQYXJhbShwYXJhbTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcblxuICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0QWN0b3JXaXRoUGFyYW0oXG4gICAgICAgIHBhcmFtLFxuICAgICAgICBwYXJhbXMuc2tpcCxcbiAgICAgICAgcGFyYW1zLmxpbWl0LFxuICAgICAgICBwYXJhbXMuc29ydFBhcmFtIHx8ICdDcmVhdGVkRGF0ZScsXG4gICAgICAgIHBhcmFtcy5zb3J0T3JkZXJcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuc3RhdGUuc2V0UmVxdWVzdHMocmVxdWVzdHMuUmVzdWx0KTtcbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlUXVlcnlQYXJhbXMoeyBza2lwOiByZXF1ZXN0cy5Ta2lwIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0cyB3aXRoIHBhcmFtOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVRdWVyeVBhcmFtcyhwYXJhbXM6IFBhcnRpYWw8UXVlcnlQYXJhbXM8QWN0b3I+Pik6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUudXBkYXRlUXVlcnlQYXJhbXMocGFyYW1zKTtcbiAgICAvLyB0aGlzLmxvYWRSZXF1ZXN0cygpO1xuICB9XG5cbiAgYXN5bmMgYWRkUmVxdWVzdChyZXF1ZXN0OiBQYXJ0aWFsPEFjdG9yPik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKHRydWUpO1xuICAgICAgY29uc3QgbmV3UmVxdWVzdCA9IHsgLi4ucmVxdWVzdCwgQWN0b3JGb3JtczogW10gfSBhcyBBY3RvcjtcbiAgICAgIC8vIHRoaXMuc3RhdGUuYWRkUmVxdWVzdChuZXdSZXF1ZXN0KTtcblxuICAgICAgYXdhaXQgdGhpcy5zZXJ2aWNlLnNhdmVBY3RvcnMoW25ld1JlcXVlc3RdKTtcbiAgICAgIHRoaXMuc3RhdGUucmVzZXRQYWdpbmF0aW9uKCk7XG4gICAgICBhd2FpdCB0aGlzLmxvYWRSZXF1ZXN0cygpOyAvLyBSZWxvYWQgdG8gZ2V0IHNlcnZlci1zaWRlIGNoYW5nZXNcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGFkZCByZXF1ZXN0OicsIGVycm9yKTtcbiAgICAgIHRoaXMuc3RhdGUucmVtb3ZlUmVxdWVzdChyZXF1ZXN0LkNvZGUhKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB1cGRhdGVSZXF1ZXN0KHJlcXVlc3Q6IEFjdG9yKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcodHJ1ZSk7XG4gICAgICBhd2FpdCB0aGlzLnNlcnZpY2Uuc2F2ZUFjdG9ycyhbcmVxdWVzdF0pO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGVSZXF1ZXN0KHJlcXVlc3QpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gdXBkYXRlIHJlcXVlc3Q6JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuc3RhdGUuc2V0VXBkYXRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFzeW5jIGRlbGV0ZVJlcXVlc3QocmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gICB0cnkge1xuICAvLyAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgLy8gICAgIGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmRlbGV0ZUFjdG9ycyhbcmVxdWVzdElkXSkpO1xuICAvLyAgICAgdGhpcy5zdGF0ZS5yZW1vdmVSZXF1ZXN0KHJlcXVlc3RJZCk7XG4gIC8vICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgLy8gICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBkZWxldGUgcmVxdWVzdDonLCBlcnJvcik7XG4gIC8vICAgICB0aHJvdyBlcnJvcjtcbiAgLy8gICB9IGZpbmFsbHkge1xuICAvLyAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgLy8gICBhc3luYyBsb2FkV29ya2Zsb3dzKCk6IFByb21pc2U8dm9pZD4ge1xuICAvLyAgICAgdHJ5IHtcbiAgLy8gICAgICAgY29uc3QgcmVxdWVzdHMgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0V29ya2Zsb3dzKCk7XG5cbiAgLy8gICAgICAgdGhpcy5zdGF0ZS5zZXRXb3JrZmxvd3MocmVxdWVzdHMuUmVzdWx0KTtcbiAgLy8gICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gIC8vICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzOicsIGVycm9yKTtcbiAgLy8gICAgICAgdGhyb3cgZXJyb3I7XG4gIC8vICAgICB9IGZpbmFsbHkge1xuICAvLyAgICAgfVxuICAvLyAgIH1cblxuICAvLyAgIGFzeW5jIGxvYWRGb3Jtc1dpdGhQYXJhbShwYXJhbTogc3RyaW5nKTogUHJvbWlzZTxGb3JtIHwgdm9pZD4ge1xuICAvLyAgICAgdHJ5IHtcbiAgLy8gICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcblxuICAvLyAgICAgICBjb25zdCByZXF1ZXN0cyA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXRGb3JtV2l0aFBhcmFtKHBhcmFtKTtcblxuICAvLyAgICAgICBjb25zdCBmb3JtID0gcmVxdWVzdHMuUmVzdWx0WzBdO1xuICAvLyAgICAgICBpZiAoZm9ybSkgcmV0dXJuIGZvcm07XG4gIC8vICAgICB9IGNhdGNoIChlcnJvcikge1xuICAvLyAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCByZXF1ZXN0cyB3aXRoIHBhcmFtOicsIGVycm9yKTtcbiAgLy8gICAgICAgdGhyb3cgZXJyb3I7XG4gIC8vICAgICB9IGZpbmFsbHkge1xuICAvLyAgICAgICB0aGlzLnN0YXRlLnNldFVwZGF0aW5nKGZhbHNlKTtcbiAgLy8gICAgIH1cbiAgLy8gICB9XG5cbiAgLy8gTG9hZCBtb3JlIGhhbmRsaW5nXG4gIGFzeW5jIGxvYWRNb3JlKHF1ZXVlOiBib29sZWFuID0gZmFsc2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyh0cnVlKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRQYXJhbXMgPSB0aGlzLnN0YXRlLmdldFF1ZXJ5UGFyYW1zVmFsdWUoKTtcbiAgICAgIC8vIGNvbnN0IHNlYXJjaFRlcm0gPSB0aGlzLnN0YXRlLmdldFNlYXJjaFRlcm1WYWx1ZSgpO1xuICAgICAgY29uc3Qgc2VhcmNoVGVybSA9IGZhbHNlO1xuXG4gICAgICAvLyBVcGRhdGUgc2tpcCB2YWx1ZVxuICAgICAgY29uc3QgbmV3U2tpcCA9IGN1cnJlbnRQYXJhbXMuc2tpcCArIGN1cnJlbnRQYXJhbXMubGltaXQ7XG5cbiAgICAgIC8vIExvYWQgYW5kIGFwcGVuZCBkYXRhXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXREYXRhKFxuICAgICAgICBjdXJyZW50UGFyYW1zLnNraXAsXG4gICAgICAgIGN1cnJlbnRQYXJhbXMubGltaXQsXG4gICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydFBhcmFtIHx8ICdjcmVhdGVkRGF0ZScsXG4gICAgICAgIGN1cnJlbnRQYXJhbXMuc29ydE9yZGVyXG4gICAgICApO1xuXG4gICAgICB0aGlzLnN0YXRlLmFwcGVuZFJlcXVlc3RzKHJlc3BvbnNlLlJlc3VsdCk7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZVF1ZXJ5UGFyYW1zKHtcbiAgICAgICAgc2tpcDogbmV3U2tpcCxcbiAgICAgICAgbGltaXQ6IGN1cnJlbnRQYXJhbXMubGltaXQsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignTG9hZCBtb3JlIGZhaWxlZDonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zdGF0ZS5zZXRVcGRhdGluZyhmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9hZFRhZ3MoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldFRhZ3MoXG4gICAgICAgIDAsXG4gICAgICAgIDAsXG4gICAgICAgICdDcmVhdGVkRGF0ZScsXG4gICAgICAgIFNvcnREaXJlY3Rpb24uRGVzY1xuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZS5zZXRUYWdzKHJlc3BvbnNlLlJlc3VsdCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHJlcXVlc3RzOicsIGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0gZmluYWxseSB7XG4gICAgfVxuICB9XG59XG4iXX0=
|