@acorex/platform 20.0.2 → 20.0.3
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/common/index.d.ts +40 -71
- package/core/index.d.ts +244 -217
- package/fesm2022/acorex-platform-common.mjs +9 -26
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +56 -56
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-BFIGLwd9.mjs → acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-BFIGLwd9.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BuyMyK_I.mjs → acorex-platform-themes-default-entity-master-list-view.component-BU_uiU_3.mjs} +9 -269
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BU_uiU_3.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CHHmHz2a.mjs → acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-CHHmHz2a.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-CnjDBPeT.mjs → acorex-platform-themes-default-entity-master-single-view.component-cvoKMP84.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-CnjDBPeT.mjs.map → acorex-platform-themes-default-entity-master-single-view.component-cvoKMP84.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +10 -10
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +26 -8
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +13 -44
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/components/index.d.ts +2 -2
- package/layout/entity/index.d.ts +2 -2
- package/package.json +1 -5
- package/widgets/index.d.ts +4 -0
- package/workflow/index.d.ts +11 -3
- package/fesm2022/acorex-platform-layout-filters.mjs +0 -163
- package/fesm2022/acorex-platform-layout-filters.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BuyMyK_I.mjs.map +0 -1
- package/layout/filters/README.md +0 -3
- package/layout/filters/index.d.ts +0 -34
package/layout/entity/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import * as _angular_core from '@angular/core';
|
|
|
2
2
|
import { InjectionToken, Injector, Type } from '@angular/core';
|
|
3
3
|
import { AXStyleColorType, AXDataSource } from '@acorex/cdk/common';
|
|
4
4
|
import * as _acorex_platform_common from '@acorex/platform/common';
|
|
5
|
-
import { AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPRelatedEntity, AXPEntitySectionView, AXPGridLayoutOptions, AXPEntityPropertyCreateView,
|
|
6
|
-
import { AXPMetaData, AXPBreadcrumbItem, AXPExecuteCommand, AXPQueryRequest, AXPPagedListResult, AXPAppStartUpService } from '@acorex/platform/core';
|
|
5
|
+
import { AXPEntityCommandScope, AXPEntity, AXPEntityAction, AXPEntityProperty, AXPEntityTableColumn, AXPRelatedEntity, AXPEntitySectionView, AXPGridLayoutOptions, AXPEntityPropertyCreateView, AXPQueryView, AXPEntityPropertyView, AXPCategoryEntity, AXPEntityPropertyGroup, AXPEntityMasterCreateLayoutView, AXPEntityMasterUpdateLayoutView, AXPEntityMasterSingleLayoutView, AXPEntityDetailListView } from '@acorex/platform/common';
|
|
6
|
+
import { AXPMetaData, AXPBreadcrumbItem, AXPFilterQuery, AXPFilterDefinition, AXPExecuteCommand, AXPQueryRequest, AXPPagedListResult, AXPAppStartUpService } from '@acorex/platform/core';
|
|
7
7
|
import * as i3 from '@acorex/platform/layout/builder';
|
|
8
8
|
import { AXPWidgetColumnNode, AXPWidgetNode, AXPLayoutBuilderService } from '@acorex/platform/layout/builder';
|
|
9
9
|
import * as i1 from '@angular/router';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/platform",
|
|
3
|
-
"version": "20.0.
|
|
3
|
+
"version": "20.0.3",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": ">=19.0.0",
|
|
6
6
|
"@angular/core": ">=19.0.0",
|
|
@@ -88,10 +88,6 @@
|
|
|
88
88
|
"types": "./layout/entity/index.d.ts",
|
|
89
89
|
"default": "./fesm2022/acorex-platform-layout-entity.mjs"
|
|
90
90
|
},
|
|
91
|
-
"./layout/filters": {
|
|
92
|
-
"types": "./layout/filters/index.d.ts",
|
|
93
|
-
"default": "./fesm2022/acorex-platform-layout-filters.mjs"
|
|
94
|
-
},
|
|
95
91
|
"./layout/views": {
|
|
96
92
|
"types": "./layout/views/index.d.ts",
|
|
97
93
|
"default": "./fesm2022/acorex-platform-layout-views.mjs"
|
package/widgets/index.d.ts
CHANGED
|
@@ -1113,6 +1113,10 @@ declare class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent
|
|
|
1113
1113
|
protected files: _angular_core.Signal<AXPFileListItem[]>;
|
|
1114
1114
|
handleFileRemove(file: AXPFileListItem): void;
|
|
1115
1115
|
removeFile(file: AXPFileListItem): void;
|
|
1116
|
+
/**
|
|
1117
|
+
* Revert a deleted file back to attached status.
|
|
1118
|
+
*/
|
|
1119
|
+
handleFileRevert(file: AXPFileListItem): void;
|
|
1116
1120
|
clear(): void;
|
|
1117
1121
|
private get __class();
|
|
1118
1122
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPFileUploaderWidgetEditComponent, never>;
|
package/workflow/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import * as rxjs from 'rxjs';
|
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { Type, ModuleWithProviders, Injector, InjectionToken } from '@angular/core';
|
|
5
|
+
import { AXKanbanItem } from '@acorex/components/kanban';
|
|
5
6
|
import { AXSchedulerAppointment, AXSchedulerAppointmentDataSourceFilter, AXSchedulerDateRange } from '@acorex/components/scheduler';
|
|
6
7
|
import { AXPActionMenuItem, AXPExecuteCommand, AXPExecuteCommandResult } from '@acorex/platform/core';
|
|
7
8
|
|
|
@@ -145,7 +146,7 @@ declare class AXPWorkflowService {
|
|
|
145
146
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowService>;
|
|
146
147
|
}
|
|
147
148
|
|
|
148
|
-
type AXPTask = AXSchedulerAppointment & {
|
|
149
|
+
type AXPTask = AXSchedulerAppointment & AXKanbanItem & {
|
|
149
150
|
data?: {
|
|
150
151
|
provider?: string;
|
|
151
152
|
actions?: AXPActionMenuItem[];
|
|
@@ -154,15 +155,22 @@ type AXPTask = AXSchedulerAppointment & {
|
|
|
154
155
|
type AXPTaskFilter = AXSchedulerAppointmentDataSourceFilter & {
|
|
155
156
|
types?: string[];
|
|
156
157
|
};
|
|
158
|
+
interface AXPTaskStatus {
|
|
159
|
+
key: string;
|
|
160
|
+
index: number;
|
|
161
|
+
title: string;
|
|
162
|
+
}
|
|
157
163
|
declare abstract class AXPWorkflowTaskProvider {
|
|
158
164
|
abstract get name(): string;
|
|
159
165
|
abstract get title(): string;
|
|
160
166
|
abstract get icon(): string;
|
|
167
|
+
abstract get statuses(): AXPTaskStatus[];
|
|
161
168
|
abstract getTasks(options?: AXPTaskFilter): Promise<AXPTask[]>;
|
|
162
|
-
abstract
|
|
169
|
+
abstract updateMultipleTasks(tasks: AXPTask[]): Promise<AXPTask[]>;
|
|
170
|
+
abstract updateTaskDateRange(id: any, range: AXSchedulerDateRange): Promise<AXPTask>;
|
|
163
171
|
abstract executeCommand(command: AXPExecuteCommand): Promise<AXPExecuteCommandResult>;
|
|
164
172
|
}
|
|
165
173
|
declare const AXP_WORKFLOW_TASK_PROVIDER: InjectionToken<AXPWorkflowTaskProvider[]>;
|
|
166
174
|
|
|
167
175
|
export { AXPWorkflowAction, AXPWorkflowContext, AXPWorkflowError, AXPWorkflowEventService, AXPWorkflowFunction, AXPWorkflowModule, AXPWorkflowRegistryService, AXPWorkflowService, AXPWorkflowTaskProvider, AXP_WORKFLOW_TASK_PROVIDER, createWorkFlowEvent, ofType };
|
|
168
|
-
export type { AXPTask, AXPTaskFilter, AXPWorkflow, AXPWorkflowActionInput, AXPWorkflowCondition, AXPWorkflowConditionType, AXPWorkflowEvent, AXPWorkflowModuleConfigs, AXPWorkflowNextStep, AXPWorkflowStep };
|
|
176
|
+
export type { AXPTask, AXPTaskFilter, AXPTaskStatus, AXPWorkflow, AXPWorkflowActionInput, AXPWorkflowCondition, AXPWorkflowConditionType, AXPWorkflowEvent, AXPWorkflowModuleConfigs, AXPWorkflowNextStep, AXPWorkflowStep };
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import { AXPFiltersProviderService } from '@acorex/platform/common';
|
|
2
|
-
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
3
|
-
import * as i0 from '@angular/core';
|
|
4
|
-
import { inject, signal, computed, effect, Injectable } from '@angular/core';
|
|
5
|
-
import { isEqual, cloneDeep } from 'lodash-es';
|
|
6
|
-
|
|
7
|
-
class AXPFiltersViewModel {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.filterProviderService = inject(AXPFiltersProviderService);
|
|
10
|
-
this.context = signal({}, { equal: isEqual });
|
|
11
|
-
this.availableFilters = signal([]);
|
|
12
|
-
this.activeFilters = signal([]);
|
|
13
|
-
this.newFilters = signal([]);
|
|
14
|
-
this.activeFiltersCount = computed(() => this.activeFilters().length);
|
|
15
|
-
this.#effect = effect(() => {
|
|
16
|
-
this.filters.update((prev) => ({ ...prev, filters: this.convertContextToQueries(this.context()) }));
|
|
17
|
-
});
|
|
18
|
-
this.#effect1 = effect(() => {
|
|
19
|
-
this.initializeContext();
|
|
20
|
-
this.activeFilters.update((prev) => this.convertFiltersToDefinition(this.mergeArray(prev, this.filters().filters || [])));
|
|
21
|
-
// const filters = this.filters().filters || [];
|
|
22
|
-
// filters.forEach((filter) => {
|
|
23
|
-
// const matchFilter = prev.find((el) => el.field === filter.field) as AXPFilterDefinition;
|
|
24
|
-
// Object.assign(matchFilter, filter);
|
|
25
|
-
// });
|
|
26
|
-
// prev.forEach((prevFilter) => {
|
|
27
|
-
// this.filters().filters?.forEach((filter) => {
|
|
28
|
-
// if (prevFilter.field === filter.field) {
|
|
29
|
-
// Object.assign(prevFilter, filter);
|
|
30
|
-
// }
|
|
31
|
-
// });
|
|
32
|
-
// });
|
|
33
|
-
// return prev;
|
|
34
|
-
// return this.convertFiltersToDefinition(merge(this.filters().filters || [], prev));
|
|
35
|
-
// return this.convertFiltersToDefinition(merge(prev, this.filters().filters || []));
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
onChoosingFiltersChange(e) {
|
|
39
|
-
if (e.isUserInteraction) {
|
|
40
|
-
this.newFilters.set(e.component.selectedItems);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
onChoosingFiltersConfirm() {
|
|
44
|
-
this.filters.update((prev) => ({
|
|
45
|
-
...prev,
|
|
46
|
-
filters: [
|
|
47
|
-
...(prev.filters || []),
|
|
48
|
-
...this.newFilters().filter((newFilter) => !prev.filters?.some((existing) => existing.field === newFilter.field)),
|
|
49
|
-
],
|
|
50
|
-
}));
|
|
51
|
-
this.activeFilters.update((prev) => [
|
|
52
|
-
...prev,
|
|
53
|
-
...this.newFilters().filter((newFilter) => !prev.some((existing) => existing.field === newFilter.field)),
|
|
54
|
-
]);
|
|
55
|
-
}
|
|
56
|
-
convertFiltersToDefinition(filters) {
|
|
57
|
-
const availableFiltersMap = new Map(this.availableFilters().map((af) => [af.field, af]));
|
|
58
|
-
return filters
|
|
59
|
-
.map((df) => {
|
|
60
|
-
const af = availableFiltersMap.get(df.field);
|
|
61
|
-
if (!af)
|
|
62
|
-
return null;
|
|
63
|
-
return {
|
|
64
|
-
field: df.field,
|
|
65
|
-
operator: df.operator,
|
|
66
|
-
filters: df.filters,
|
|
67
|
-
logic: df.logic,
|
|
68
|
-
value: df.value,
|
|
69
|
-
title: af.title,
|
|
70
|
-
widget: af.widget,
|
|
71
|
-
isParametric: af.isParametric,
|
|
72
|
-
};
|
|
73
|
-
})
|
|
74
|
-
.filter((filter) => filter !== null);
|
|
75
|
-
}
|
|
76
|
-
setAvailableFilters(availableFilters) {
|
|
77
|
-
this.availableFilters.set(availableFilters);
|
|
78
|
-
this.activeFilters.set(availableFilters);
|
|
79
|
-
}
|
|
80
|
-
setFiltersModel(filters) {
|
|
81
|
-
this.filters = filters;
|
|
82
|
-
}
|
|
83
|
-
drop(event) {
|
|
84
|
-
const cloned = cloneDeep(this.activeFilters());
|
|
85
|
-
moveItemInArray(cloned, event.previousIndex, event.currentIndex);
|
|
86
|
-
this.activeFilters.set(cloned);
|
|
87
|
-
}
|
|
88
|
-
convertContextToQueries(context) {
|
|
89
|
-
const contextKeys = Object.keys(context);
|
|
90
|
-
return contextKeys.map((c) => ({
|
|
91
|
-
field: c,
|
|
92
|
-
value: context[c].value,
|
|
93
|
-
operator: {
|
|
94
|
-
type: context[c].operation,
|
|
95
|
-
},
|
|
96
|
-
}));
|
|
97
|
-
}
|
|
98
|
-
resetFilterFields() {
|
|
99
|
-
this.newFilters.set(this.activeFilters());
|
|
100
|
-
}
|
|
101
|
-
removeCondition(selectedFilter) {
|
|
102
|
-
this.context.update((prev) => {
|
|
103
|
-
const newContext = { ...prev };
|
|
104
|
-
delete newContext[selectedFilter.field];
|
|
105
|
-
return newContext;
|
|
106
|
-
});
|
|
107
|
-
this.activeFilters.update((prev) => prev.filter((el) => el.field !== selectedFilter.field));
|
|
108
|
-
}
|
|
109
|
-
#effect;
|
|
110
|
-
#effect1;
|
|
111
|
-
initializeContext() {
|
|
112
|
-
const context = {};
|
|
113
|
-
if (this.filters()?.filters?.length) {
|
|
114
|
-
this.filters().filters?.forEach((f) => {
|
|
115
|
-
context[f.field] = {
|
|
116
|
-
value: f.value,
|
|
117
|
-
operation: f.operator.type,
|
|
118
|
-
};
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
this.context.set(context);
|
|
122
|
-
}
|
|
123
|
-
initializeFilters() {
|
|
124
|
-
this.initializeContext();
|
|
125
|
-
this.activeFilters.update((prev) => this.convertFiltersToDefinition(this.mergeArray(prev, this.filters().filters || [])));
|
|
126
|
-
// const filters = this.filters().filters || [];
|
|
127
|
-
// filters.forEach((filter) => {
|
|
128
|
-
// const matchFilter = prev.find((el) => el.field === filter.field) as AXPFilterDefinition;
|
|
129
|
-
// Object.assign(matchFilter, filter);
|
|
130
|
-
// });
|
|
131
|
-
// prev.forEach((prevFilter) => {
|
|
132
|
-
// this.filters().filters?.forEach((filter) => {
|
|
133
|
-
// if (prevFilter.field === filter.field) {
|
|
134
|
-
// // prevFilter = { ...prevFilter, ...filter } as AXPFilterDefinition;
|
|
135
|
-
// Object.assign(prevFilter, filter);
|
|
136
|
-
// }
|
|
137
|
-
// });
|
|
138
|
-
// });
|
|
139
|
-
// return prev;
|
|
140
|
-
// this.activeFilters.update((prev) => merge(this.convertFiltersToDefinition(this.filters().filters || []), prev));
|
|
141
|
-
// this.activeFilters.update((prev) => merge(prev, this.convertFiltersToDefinition(this.filters().filters || [])));
|
|
142
|
-
}
|
|
143
|
-
mergeArray(prevArray, newArray) {
|
|
144
|
-
prevArray.forEach((filter) => {
|
|
145
|
-
const matchFilter = newArray.find((el) => el.field === filter.field);
|
|
146
|
-
Object.assign(filter, matchFilter);
|
|
147
|
-
});
|
|
148
|
-
return prevArray;
|
|
149
|
-
}
|
|
150
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPFiltersViewModel, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
151
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPFiltersViewModel, providedIn: 'root' }); }
|
|
152
|
-
}
|
|
153
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPFiltersViewModel, decorators: [{
|
|
154
|
-
type: Injectable,
|
|
155
|
-
args: [{ providedIn: 'root' }]
|
|
156
|
-
}] });
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* Generated bundle index. Do not edit.
|
|
160
|
-
*/
|
|
161
|
-
|
|
162
|
-
export { AXPFiltersViewModel };
|
|
163
|
-
//# sourceMappingURL=acorex-platform-layout-filters.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-layout-filters.mjs","sources":["../tmp-esm2022/layout/filters/lib/filters.viewmodel.js","../tmp-esm2022/layout/filters/acorex-platform-layout-filters.js"],"sourcesContent":["import { AXPFiltersProviderService } from '@acorex/platform/common';\nimport { moveItemInArray } from '@angular/cdk/drag-drop';\nimport { computed, effect, inject, Injectable, signal } from '@angular/core';\nimport { cloneDeep, isEqual } from 'lodash-es';\nimport * as i0 from \"@angular/core\";\nexport class AXPFiltersViewModel {\n constructor() {\n this.filterProviderService = inject(AXPFiltersProviderService);\n this.context = signal({}, { equal: isEqual });\n this.availableFilters = signal([]);\n this.activeFilters = signal([]);\n this.newFilters = signal([]);\n this.activeFiltersCount = computed(() => this.activeFilters().length);\n this.#effect = effect(() => {\n this.filters.update((prev) => ({ ...prev, filters: this.convertContextToQueries(this.context()) }));\n });\n this.#effect1 = effect(() => {\n this.initializeContext();\n this.activeFilters.update((prev) => this.convertFiltersToDefinition(this.mergeArray(prev, this.filters().filters || [])));\n // const filters = this.filters().filters || [];\n // filters.forEach((filter) => {\n // const matchFilter = prev.find((el) => el.field === filter.field) as AXPFilterDefinition;\n // Object.assign(matchFilter, filter);\n // });\n // prev.forEach((prevFilter) => {\n // this.filters().filters?.forEach((filter) => {\n // if (prevFilter.field === filter.field) {\n // Object.assign(prevFilter, filter);\n // }\n // });\n // });\n // return prev;\n // return this.convertFiltersToDefinition(merge(this.filters().filters || [], prev));\n // return this.convertFiltersToDefinition(merge(prev, this.filters().filters || []));\n });\n }\n onChoosingFiltersChange(e) {\n if (e.isUserInteraction) {\n this.newFilters.set(e.component.selectedItems);\n }\n }\n onChoosingFiltersConfirm() {\n this.filters.update((prev) => ({\n ...prev,\n filters: [\n ...(prev.filters || []),\n ...this.newFilters().filter((newFilter) => !prev.filters?.some((existing) => existing.field === newFilter.field)),\n ],\n }));\n this.activeFilters.update((prev) => [\n ...prev,\n ...this.newFilters().filter((newFilter) => !prev.some((existing) => existing.field === newFilter.field)),\n ]);\n }\n convertFiltersToDefinition(filters) {\n const availableFiltersMap = new Map(this.availableFilters().map((af) => [af.field, af]));\n return filters\n .map((df) => {\n const af = availableFiltersMap.get(df.field);\n if (!af)\n return null;\n return {\n field: df.field,\n operator: df.operator,\n filters: df.filters,\n logic: df.logic,\n value: df.value,\n title: af.title,\n widget: af.widget,\n isParametric: af.isParametric,\n };\n })\n .filter((filter) => filter !== null);\n }\n setAvailableFilters(availableFilters) {\n this.availableFilters.set(availableFilters);\n this.activeFilters.set(availableFilters);\n }\n setFiltersModel(filters) {\n this.filters = filters;\n }\n drop(event) {\n const cloned = cloneDeep(this.activeFilters());\n moveItemInArray(cloned, event.previousIndex, event.currentIndex);\n this.activeFilters.set(cloned);\n }\n convertContextToQueries(context) {\n const contextKeys = Object.keys(context);\n return contextKeys.map((c) => ({\n field: c,\n value: context[c].value,\n operator: {\n type: context[c].operation,\n },\n }));\n }\n resetFilterFields() {\n this.newFilters.set(this.activeFilters());\n }\n removeCondition(selectedFilter) {\n this.context.update((prev) => {\n const newContext = { ...prev };\n delete newContext[selectedFilter.field];\n return newContext;\n });\n this.activeFilters.update((prev) => prev.filter((el) => el.field !== selectedFilter.field));\n }\n #effect;\n #effect1;\n initializeContext() {\n const context = {};\n if (this.filters()?.filters?.length) {\n this.filters().filters?.forEach((f) => {\n context[f.field] = {\n value: f.value,\n operation: f.operator.type,\n };\n });\n }\n this.context.set(context);\n }\n initializeFilters() {\n this.initializeContext();\n this.activeFilters.update((prev) => this.convertFiltersToDefinition(this.mergeArray(prev, this.filters().filters || [])));\n // const filters = this.filters().filters || [];\n // filters.forEach((filter) => {\n // const matchFilter = prev.find((el) => el.field === filter.field) as AXPFilterDefinition;\n // Object.assign(matchFilter, filter);\n // });\n // prev.forEach((prevFilter) => {\n // this.filters().filters?.forEach((filter) => {\n // if (prevFilter.field === filter.field) {\n // // prevFilter = { ...prevFilter, ...filter } as AXPFilterDefinition;\n // Object.assign(prevFilter, filter);\n // }\n // });\n // });\n // return prev;\n // this.activeFilters.update((prev) => merge(this.convertFiltersToDefinition(this.filters().filters || []), prev));\n // this.activeFilters.update((prev) => merge(prev, this.convertFiltersToDefinition(this.filters().filters || [])));\n }\n mergeArray(prevArray, newArray) {\n prevArray.forEach((filter) => {\n const matchFilter = newArray.find((el) => el.field === filter.field);\n Object.assign(filter, matchFilter);\n });\n return prevArray;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFiltersViewModel, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFiltersViewModel, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFiltersViewModel, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy52aWV3bW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9maWx0ZXJzL3NyYy9saWIvZmlsdGVycy52aWV3bW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUF1Qyx5QkFBeUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pHLE9BQU8sRUFBZSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFlLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDMUcsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBRy9DLE1BQU0sT0FBTyxtQkFBbUI7SUFEaEM7UUFFbUIsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFFM0UsWUFBTyxHQUEyQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFFeEUscUJBQWdCLEdBQTBDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyRSxrQkFBYSxHQUEwQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEUsZUFBVSxHQUEwQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFJL0QsdUJBQWtCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQW1GMUUsWUFBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLENBQUMsQ0FBQyxDQUFDO1FBRUgsYUFBUSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDckIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNqQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUNyRixDQUFDO1lBQ0YsZ0RBQWdEO1lBRWhELGdDQUFnQztZQUNoQyw2RkFBNkY7WUFDN0Ysd0NBQXdDO1lBQ3hDLE1BQU07WUFDTixpQ0FBaUM7WUFDakMsa0RBQWtEO1lBQ2xELCtDQUErQztZQUMvQywyQ0FBMkM7WUFDM0MsUUFBUTtZQUNSLFFBQVE7WUFDUixNQUFNO1lBQ04sZUFBZTtZQUNmLHFGQUFxRjtZQUNyRixxRkFBcUY7UUFDdkYsQ0FBQyxDQUFDLENBQUM7S0FnREo7SUExSkMsdUJBQXVCLENBQUMsQ0FBMkI7UUFDakQsSUFBSSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pELENBQUM7SUFDSCxDQUFDO0lBRUQsd0JBQXdCO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdCLEdBQUcsSUFBSTtZQUNQLE9BQU8sRUFBRTtnQkFDUCxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7Z0JBQ3ZCLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE1BQU0sQ0FDekIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUNyRjthQUNGO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDbEMsR0FBRyxJQUFJO1lBQ1AsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3pHLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxPQUF5QjtRQUNsRCxNQUFNLG1CQUFtQixHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6RixPQUFPLE9BQU87YUFDWCxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNWLE1BQU0sRUFBRSxHQUFHLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUM7WUFDckIsT0FBTztnQkFDTCxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUs7Z0JBQ2YsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRO2dCQUNyQixPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU87Z0JBQ25CLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSztnQkFDZixLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUs7Z0JBQ2YsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLO2dCQUNmLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTTtnQkFDakIsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZO2FBQzlCLENBQUM7UUFDSixDQUFDLENBQUM7YUFDRCxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQTBCLENBQUM7SUFDbEUsQ0FBQztJQUVELG1CQUFtQixDQUFDLGdCQUF1QztRQUN6RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQW9DO1FBQ2xELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBNkI7UUFDaEMsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLGVBQWUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELHVCQUF1QixDQUFDLE9BQVk7UUFDbEMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxPQUFPLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0IsS0FBSyxFQUFFLENBQUM7WUFDUixLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDdkIsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUzthQUMzQjtTQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlLENBQUMsY0FBbUM7UUFDakQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMzQixNQUFNLFVBQVUsR0FBRyxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7WUFDL0IsT0FBTyxVQUFVLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELE9BQU8sQ0FFSjtJQUVILFFBQVEsQ0FxQkw7SUFFSyxpQkFBaUI7UUFDdkIsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNwQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHO29CQUNqQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7b0JBQ2QsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSTtpQkFDM0IsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2pDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQ3JGLENBQUM7UUFDRixnREFBZ0Q7UUFFaEQsZ0NBQWdDO1FBQ2hDLDZGQUE2RjtRQUM3Rix3Q0FBd0M7UUFDeEMsTUFBTTtRQUNOLGlDQUFpQztRQUNqQyxrREFBa0Q7UUFDbEQsK0NBQStDO1FBQy9DLDZFQUE2RTtRQUM3RSwyQ0FBMkM7UUFDM0MsUUFBUTtRQUNSLFFBQVE7UUFDUixNQUFNO1FBQ04sZUFBZTtRQUNmLG1IQUFtSDtRQUNuSCxtSEFBbUg7SUFDckgsQ0FBQztJQUVELFVBQVUsQ0FBQyxTQUFnQixFQUFFLFFBQWU7UUFDMUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLEtBQUssQ0FBd0IsQ0FBQztZQUM1RixNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7OEdBdEtVLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGNBRE4sTUFBTTs7MkZBQ25CLG1CQUFtQjtrQkFEL0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFZhbHVlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYUEZpbHRlckRlZmluaXRpb24sIEFYUEZpbHRlclF1ZXJ5LCBBWFBGaWx0ZXJzUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBJbmplY3RhYmxlLCBNb2RlbFNpZ25hbCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwLCBpc0VxdWFsIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBWFBGaWx0ZXJzVmlld01vZGVsIHtcbiAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXJQcm92aWRlclNlcnZpY2UgPSBpbmplY3QoQVhQRmlsdGVyc1Byb3ZpZGVyU2VydmljZSk7XG5cbiAgY29udGV4dDogV3JpdGFibGVTaWduYWw8eyBba2V5OiBzdHJpbmddOiBhbnkgfT4gPSBzaWduYWwoe30sIHsgZXF1YWw6IGlzRXF1YWwgfSk7XG5cbiAgcmVhZG9ubHkgYXZhaWxhYmxlRmlsdGVyczogV3JpdGFibGVTaWduYWw8QVhQRmlsdGVyRGVmaW5pdGlvbltdPiA9IHNpZ25hbChbXSk7XG4gIHJlYWRvbmx5IGFjdGl2ZUZpbHRlcnM6IFdyaXRhYmxlU2lnbmFsPEFYUEZpbHRlckRlZmluaXRpb25bXT4gPSBzaWduYWwoW10pO1xuICByZWFkb25seSBuZXdGaWx0ZXJzOiBXcml0YWJsZVNpZ25hbDxBWFBGaWx0ZXJEZWZpbml0aW9uW10+ID0gc2lnbmFsKFtdKTtcblxuICBwcm90ZWN0ZWQgZmlsdGVycyE6IE1vZGVsU2lnbmFsPEFYUEZpbHRlclF1ZXJ5PjtcblxuICByZWFkb25seSBhY3RpdmVGaWx0ZXJzQ291bnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmFjdGl2ZUZpbHRlcnMoKS5sZW5ndGgpO1xuXG4gIG9uQ2hvb3NpbmdGaWx0ZXJzQ2hhbmdlKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQ8YW55Pikge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uKSB7XG4gICAgICB0aGlzLm5ld0ZpbHRlcnMuc2V0KGUuY29tcG9uZW50LnNlbGVjdGVkSXRlbXMpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2hvb3NpbmdGaWx0ZXJzQ29uZmlybSgpIHtcbiAgICB0aGlzLmZpbHRlcnMudXBkYXRlKChwcmV2KSA9PiAoe1xuICAgICAgLi4ucHJldixcbiAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAgLi4uKHByZXYuZmlsdGVycyB8fCBbXSksXG4gICAgICAgIC4uLnRoaXMubmV3RmlsdGVycygpLmZpbHRlcihcbiAgICAgICAgICAobmV3RmlsdGVyKSA9PiAhcHJldi5maWx0ZXJzPy5zb21lKChleGlzdGluZykgPT4gZXhpc3RpbmcuZmllbGQgPT09IG5ld0ZpbHRlci5maWVsZCksXG4gICAgICAgICksXG4gICAgICBdLFxuICAgIH0pKTtcbiAgICB0aGlzLmFjdGl2ZUZpbHRlcnMudXBkYXRlKChwcmV2KSA9PiBbXG4gICAgICAuLi5wcmV2LFxuICAgICAgLi4udGhpcy5uZXdGaWx0ZXJzKCkuZmlsdGVyKChuZXdGaWx0ZXIpID0+ICFwcmV2LnNvbWUoKGV4aXN0aW5nKSA9PiBleGlzdGluZy5maWVsZCA9PT0gbmV3RmlsdGVyLmZpZWxkKSksXG4gICAgXSk7XG4gIH1cblxuICBjb252ZXJ0RmlsdGVyc1RvRGVmaW5pdGlvbihmaWx0ZXJzOiBBWFBGaWx0ZXJRdWVyeVtdKTogQVhQRmlsdGVyRGVmaW5pdGlvbltdIHtcbiAgICBjb25zdCBhdmFpbGFibGVGaWx0ZXJzTWFwID0gbmV3IE1hcCh0aGlzLmF2YWlsYWJsZUZpbHRlcnMoKS5tYXAoKGFmKSA9PiBbYWYuZmllbGQsIGFmXSkpO1xuICAgIHJldHVybiBmaWx0ZXJzXG4gICAgICAubWFwKChkZikgPT4ge1xuICAgICAgICBjb25zdCBhZiA9IGF2YWlsYWJsZUZpbHRlcnNNYXAuZ2V0KGRmLmZpZWxkKTtcbiAgICAgICAgaWYgKCFhZikgcmV0dXJuIG51bGw7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgZmllbGQ6IGRmLmZpZWxkLFxuICAgICAgICAgIG9wZXJhdG9yOiBkZi5vcGVyYXRvcixcbiAgICAgICAgICBmaWx0ZXJzOiBkZi5maWx0ZXJzLFxuICAgICAgICAgIGxvZ2ljOiBkZi5sb2dpYyxcbiAgICAgICAgICB2YWx1ZTogZGYudmFsdWUsXG4gICAgICAgICAgdGl0bGU6IGFmLnRpdGxlLFxuICAgICAgICAgIHdpZGdldDogYWYud2lkZ2V0LFxuICAgICAgICAgIGlzUGFyYW1ldHJpYzogYWYuaXNQYXJhbWV0cmljLFxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICAgIC5maWx0ZXIoKGZpbHRlcikgPT4gZmlsdGVyICE9PSBudWxsKSBhcyBBWFBGaWx0ZXJEZWZpbml0aW9uW107XG4gIH1cblxuICBzZXRBdmFpbGFibGVGaWx0ZXJzKGF2YWlsYWJsZUZpbHRlcnM6IEFYUEZpbHRlckRlZmluaXRpb25bXSkge1xuICAgIHRoaXMuYXZhaWxhYmxlRmlsdGVycy5zZXQoYXZhaWxhYmxlRmlsdGVycyk7XG4gICAgdGhpcy5hY3RpdmVGaWx0ZXJzLnNldChhdmFpbGFibGVGaWx0ZXJzKTtcbiAgfVxuXG4gIHNldEZpbHRlcnNNb2RlbChmaWx0ZXJzOiBNb2RlbFNpZ25hbDxBWFBGaWx0ZXJRdWVyeT4pIHtcbiAgICB0aGlzLmZpbHRlcnMgPSBmaWx0ZXJzO1xuICB9XG5cbiAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8dW5rbm93bltdPikge1xuICAgIGNvbnN0IGNsb25lZCA9IGNsb25lRGVlcCh0aGlzLmFjdGl2ZUZpbHRlcnMoKSk7XG4gICAgbW92ZUl0ZW1JbkFycmF5KGNsb25lZCwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcbiAgICB0aGlzLmFjdGl2ZUZpbHRlcnMuc2V0KGNsb25lZCk7XG4gIH1cblxuICBjb252ZXJ0Q29udGV4dFRvUXVlcmllcyhjb250ZXh0OiBhbnkpOiBBWFBGaWx0ZXJRdWVyeVtdIHtcbiAgICBjb25zdCBjb250ZXh0S2V5cyA9IE9iamVjdC5rZXlzKGNvbnRleHQpO1xuICAgIHJldHVybiBjb250ZXh0S2V5cy5tYXAoKGMpID0+ICh7XG4gICAgICBmaWVsZDogYyxcbiAgICAgIHZhbHVlOiBjb250ZXh0W2NdLnZhbHVlLFxuICAgICAgb3BlcmF0b3I6IHtcbiAgICAgICAgdHlwZTogY29udGV4dFtjXS5vcGVyYXRpb24sXG4gICAgICB9LFxuICAgIH0pKTtcbiAgfVxuXG4gIHJlc2V0RmlsdGVyRmllbGRzKCkge1xuICAgIHRoaXMubmV3RmlsdGVycy5zZXQodGhpcy5hY3RpdmVGaWx0ZXJzKCkpO1xuICB9XG5cbiAgcmVtb3ZlQ29uZGl0aW9uKHNlbGVjdGVkRmlsdGVyOiBBWFBGaWx0ZXJEZWZpbml0aW9uKSB7XG4gICAgdGhpcy5jb250ZXh0LnVwZGF0ZSgocHJldikgPT4ge1xuICAgICAgY29uc3QgbmV3Q29udGV4dCA9IHsgLi4ucHJldiB9O1xuICAgICAgZGVsZXRlIG5ld0NvbnRleHRbc2VsZWN0ZWRGaWx0ZXIuZmllbGRdO1xuICAgICAgcmV0dXJuIG5ld0NvbnRleHQ7XG4gICAgfSk7XG4gICAgdGhpcy5hY3RpdmVGaWx0ZXJzLnVwZGF0ZSgocHJldikgPT4gcHJldi5maWx0ZXIoKGVsKSA9PiBlbC5maWVsZCAhPT0gc2VsZWN0ZWRGaWx0ZXIuZmllbGQpKTtcbiAgfVxuXG4gICNlZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuZmlsdGVycy51cGRhdGUoKHByZXYpID0+ICh7IC4uLnByZXYsIGZpbHRlcnM6IHRoaXMuY29udmVydENvbnRleHRUb1F1ZXJpZXModGhpcy5jb250ZXh0KCkpIH0pKTtcbiAgfSk7XG5cbiAgI2VmZmVjdDEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUNvbnRleHQoKTtcbiAgICB0aGlzLmFjdGl2ZUZpbHRlcnMudXBkYXRlKChwcmV2KSA9PlxuICAgICAgdGhpcy5jb252ZXJ0RmlsdGVyc1RvRGVmaW5pdGlvbih0aGlzLm1lcmdlQXJyYXkocHJldiwgdGhpcy5maWx0ZXJzKCkuZmlsdGVycyB8fCBbXSkpLFxuICAgICk7XG4gICAgLy8gY29uc3QgZmlsdGVycyA9IHRoaXMuZmlsdGVycygpLmZpbHRlcnMgfHwgW107XG5cbiAgICAvLyBmaWx0ZXJzLmZvckVhY2goKGZpbHRlcikgPT4ge1xuICAgIC8vICAgY29uc3QgbWF0Y2hGaWx0ZXIgPSBwcmV2LmZpbmQoKGVsKSA9PiBlbC5maWVsZCA9PT0gZmlsdGVyLmZpZWxkKSBhcyBBWFBGaWx0ZXJEZWZpbml0aW9uO1xuICAgIC8vICAgT2JqZWN0LmFzc2lnbihtYXRjaEZpbHRlciwgZmlsdGVyKTtcbiAgICAvLyB9KTtcbiAgICAvLyBwcmV2LmZvckVhY2goKHByZXZGaWx0ZXIpID0+IHtcbiAgICAvLyAgIHRoaXMuZmlsdGVycygpLmZpbHRlcnM/LmZvckVhY2goKGZpbHRlcikgPT4ge1xuICAgIC8vICAgICBpZiAocHJldkZpbHRlci5maWVsZCA9PT0gZmlsdGVyLmZpZWxkKSB7XG4gICAgLy8gICAgICAgT2JqZWN0LmFzc2lnbihwcmV2RmlsdGVyLCBmaWx0ZXIpO1xuICAgIC8vICAgICB9XG4gICAgLy8gICB9KTtcbiAgICAvLyB9KTtcbiAgICAvLyByZXR1cm4gcHJldjtcbiAgICAvLyByZXR1cm4gdGhpcy5jb252ZXJ0RmlsdGVyc1RvRGVmaW5pdGlvbihtZXJnZSh0aGlzLmZpbHRlcnMoKS5maWx0ZXJzIHx8IFtdLCBwcmV2KSk7XG4gICAgLy8gcmV0dXJuIHRoaXMuY29udmVydEZpbHRlcnNUb0RlZmluaXRpb24obWVyZ2UocHJldiwgdGhpcy5maWx0ZXJzKCkuZmlsdGVycyB8fCBbXSkpO1xuICB9KTtcblxuICBwcml2YXRlIGluaXRpYWxpemVDb250ZXh0KCkge1xuICAgIGNvbnN0IGNvbnRleHQ6IGFueSA9IHt9O1xuXG4gICAgaWYgKHRoaXMuZmlsdGVycygpPy5maWx0ZXJzPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZmlsdGVycygpLmZpbHRlcnM/LmZvckVhY2goKGYpID0+IHtcbiAgICAgICAgY29udGV4dFtmLmZpZWxkXSA9IHtcbiAgICAgICAgICB2YWx1ZTogZi52YWx1ZSxcbiAgICAgICAgICBvcGVyYXRpb246IGYub3BlcmF0b3IudHlwZSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLmNvbnRleHQuc2V0KGNvbnRleHQpO1xuICB9XG5cbiAgaW5pdGlhbGl6ZUZpbHRlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsaXplQ29udGV4dCgpO1xuICAgIHRoaXMuYWN0aXZlRmlsdGVycy51cGRhdGUoKHByZXYpID0+XG4gICAgICB0aGlzLmNvbnZlcnRGaWx0ZXJzVG9EZWZpbml0aW9uKHRoaXMubWVyZ2VBcnJheShwcmV2LCB0aGlzLmZpbHRlcnMoKS5maWx0ZXJzIHx8IFtdKSksXG4gICAgKTtcbiAgICAvLyBjb25zdCBmaWx0ZXJzID0gdGhpcy5maWx0ZXJzKCkuZmlsdGVycyB8fCBbXTtcblxuICAgIC8vIGZpbHRlcnMuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgLy8gICBjb25zdCBtYXRjaEZpbHRlciA9IHByZXYuZmluZCgoZWwpID0+IGVsLmZpZWxkID09PSBmaWx0ZXIuZmllbGQpIGFzIEFYUEZpbHRlckRlZmluaXRpb247XG4gICAgLy8gICBPYmplY3QuYXNzaWduKG1hdGNoRmlsdGVyLCBmaWx0ZXIpO1xuICAgIC8vIH0pO1xuICAgIC8vIHByZXYuZm9yRWFjaCgocHJldkZpbHRlcikgPT4ge1xuICAgIC8vICAgdGhpcy5maWx0ZXJzKCkuZmlsdGVycz8uZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgLy8gICAgIGlmIChwcmV2RmlsdGVyLmZpZWxkID09PSBmaWx0ZXIuZmllbGQpIHtcbiAgICAvLyAgICAgICAvLyBwcmV2RmlsdGVyID0geyAuLi5wcmV2RmlsdGVyLCAuLi5maWx0ZXIgfSBhcyBBWFBGaWx0ZXJEZWZpbml0aW9uO1xuICAgIC8vICAgICAgIE9iamVjdC5hc3NpZ24ocHJldkZpbHRlciwgZmlsdGVyKTtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgfSk7XG4gICAgLy8gfSk7XG4gICAgLy8gcmV0dXJuIHByZXY7XG4gICAgLy8gdGhpcy5hY3RpdmVGaWx0ZXJzLnVwZGF0ZSgocHJldikgPT4gbWVyZ2UodGhpcy5jb252ZXJ0RmlsdGVyc1RvRGVmaW5pdGlvbih0aGlzLmZpbHRlcnMoKS5maWx0ZXJzIHx8IFtdKSwgcHJldikpO1xuICAgIC8vIHRoaXMuYWN0aXZlRmlsdGVycy51cGRhdGUoKHByZXYpID0+IG1lcmdlKHByZXYsIHRoaXMuY29udmVydEZpbHRlcnNUb0RlZmluaXRpb24odGhpcy5maWx0ZXJzKCkuZmlsdGVycyB8fCBbXSkpKTtcbiAgfVxuXG4gIG1lcmdlQXJyYXkocHJldkFycmF5OiBhbnlbXSwgbmV3QXJyYXk6IGFueVtdKSB7XG4gICAgcHJldkFycmF5LmZvckVhY2goKGZpbHRlcikgPT4ge1xuICAgICAgY29uc3QgbWF0Y2hGaWx0ZXIgPSBuZXdBcnJheS5maW5kKChlbCkgPT4gZWwuZmllbGQgPT09IGZpbHRlci5maWVsZCkgYXMgQVhQRmlsdGVyRGVmaW5pdGlvbjtcbiAgICAgIE9iamVjdC5hc3NpZ24oZmlsdGVyLCBtYXRjaEZpbHRlcik7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcHJldkFycmF5O1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LXBsYXRmb3JtLWxheW91dC1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZmlsdGVycy9zcmMvYWNvcmV4LXBsYXRmb3JtLWxheW91dC1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
|