@mediusinc/mng-commons-audit 6.0.0-rc.5 → 6.0.0-rc.6
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/fesm2022/mediusinc-mng-commons-audit.mjs +24 -24
- package/fesm2022/mediusinc-mng-commons-audit.mjs.map +1 -1
- package/lib/components/pages/revisions/audit-revisions.page.component.d.ts +1 -1
- package/package.json +6 -8
- package/version-info.json +3 -3
- package/esm2022/index.mjs +0 -6
- package/esm2022/lib/api/models/entityChange.mjs +0 -2
- package/esm2022/lib/api/models/get-all-response.model.mjs +0 -2
- package/esm2022/lib/api/models/guiEntityModel.mjs +0 -2
- package/esm2022/lib/api/models/guiPropertyModel.mjs +0 -2
- package/esm2022/lib/api/models/guiPropertyType.mjs +0 -11
- package/esm2022/lib/api/models/guiRelationModel.mjs +0 -2
- package/esm2022/lib/api/models/revEntityWithChangesDto.mjs +0 -2
- package/esm2022/lib/api/models/revEntityWithStateDto.mjs +0 -2
- package/esm2022/lib/api/models/revisionType.mjs +0 -9
- package/esm2022/lib/api/services/audit-api.service.mjs +0 -38
- package/esm2022/lib/api/services/audit-revisions-api.service.mjs +0 -64
- package/esm2022/lib/api/services/audit.service.mjs +0 -58
- package/esm2022/lib/audit.routes.mjs +0 -51
- package/esm2022/lib/components/entity-changes-field/entity-changes-field.component.mjs +0 -90
- package/esm2022/lib/components/pages/audit/audit.page.component.mjs +0 -12
- package/esm2022/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.mjs +0 -162
- package/esm2022/lib/components/pages/revisions/audit-revisions.page.component.mjs +0 -77
- package/esm2022/lib/helpers/descriptor.mjs +0 -136
- package/esm2022/lib/helpers/entity-changes.mjs +0 -42
- package/esm2022/lib/helpers/i18n.mjs +0 -14
- package/esm2022/lib/models/config.model.mjs +0 -2
- package/esm2022/lib/models/entity-revision-change-state.model.mjs +0 -2
- package/esm2022/lib/models/entity-revision-changes.model.mjs +0 -2
- package/esm2022/lib/models/guiEntityModelWithI18n.model.mjs +0 -2
- package/esm2022/lib/models/rev-entity-detailed.model.mjs +0 -2
- package/esm2022/lib/models/rev-entity.model.mjs +0 -2
- package/esm2022/lib/models/revEntityWithId.model.mjs +0 -2
- package/esm2022/lib/service/module-config.token.mjs +0 -3
- package/esm2022/mediusinc-mng-commons-audit.mjs +0 -5
package/esm2022/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.mjs
DELETED
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Injector, computed, inject, signal } from '@angular/core';
|
|
2
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { ActivatedRoute, Router } from '@angular/router';
|
|
5
|
-
import { FormlyModule } from '@ngx-formly/core';
|
|
6
|
-
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
7
|
-
import { throwError } from 'rxjs';
|
|
8
|
-
import { map } from 'rxjs/operators';
|
|
9
|
-
import { CommonsInternalError, effectWithDeps } from '@mediusinc/mng-commons/core';
|
|
10
|
-
import { DropdownComponent } from '@mediusinc/mng-commons/form';
|
|
11
|
-
import { lookupDataProvider } from '@mediusinc/mng-commons/form/api';
|
|
12
|
-
import { TableviewComponent } from '@mediusinc/mng-commons/tableview';
|
|
13
|
-
import { tableviewActionDetailsOnTable, tableviewDataProvider, tableviewDescriptor } from '@mediusinc/mng-commons/tableview/api';
|
|
14
|
-
import { AuditRevisionsApiService } from '../../../api/services/audit-revisions-api.service';
|
|
15
|
-
import { AuditService } from '../../../api/services/audit.service';
|
|
16
|
-
import { auditBuildTableviewEntityRevision } from '../../../helpers/descriptor';
|
|
17
|
-
import { getI18nAuditEntityName } from '../../../helpers/i18n';
|
|
18
|
-
import * as i0 from "@angular/core";
|
|
19
|
-
import * as i1 from "@angular/forms";
|
|
20
|
-
import * as i2 from "@ngx-translate/core";
|
|
21
|
-
export class AuditEntityRevisionsPageComponent {
|
|
22
|
-
constructor() {
|
|
23
|
-
this.#injector = inject(Injector);
|
|
24
|
-
this.#router = inject(Router);
|
|
25
|
-
this.#route = inject(ActivatedRoute);
|
|
26
|
-
this.#translate = inject(TranslateService);
|
|
27
|
-
this.#auditService = inject(AuditService);
|
|
28
|
-
this.#revModel = toSignal(this.#auditService.revModel$);
|
|
29
|
-
this.#auditModel = toSignal(this.#auditService.auditModel$);
|
|
30
|
-
this.#entityClass = toSignal(this.#route.paramMap.pipe(map(pm => pm.get('entityClass') ?? undefined)));
|
|
31
|
-
this.selectedRevisionEntity = computed(() => {
|
|
32
|
-
const entities = this.#auditModel();
|
|
33
|
-
const entityClass = this.#entityClass();
|
|
34
|
-
if (entityClass && entities) {
|
|
35
|
-
for (const e of entities) {
|
|
36
|
-
if (e.entityName === entityClass) {
|
|
37
|
-
return e;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return undefined;
|
|
42
|
-
});
|
|
43
|
-
this.descriptor = computed(() => {
|
|
44
|
-
const revModel = this.#revModel();
|
|
45
|
-
const selectedRevisionEntity = this.selectedRevisionEntity();
|
|
46
|
-
if (!revModel || !selectedRevisionEntity?.entityName) {
|
|
47
|
-
return undefined;
|
|
48
|
-
}
|
|
49
|
-
const desc = tableviewDescriptor({ id: 'mergedId' });
|
|
50
|
-
auditBuildTableviewEntityRevision(this.#translate, desc, revModel, selectedRevisionEntity);
|
|
51
|
-
desc.table.withTitle(getI18nAuditEntityName(this.#translate, selectedRevisionEntity.entityName));
|
|
52
|
-
desc.table.withColumnsResizable();
|
|
53
|
-
desc.table.withCurrentColumnsReorderable();
|
|
54
|
-
desc.table.withCurrentColumnsToggleable();
|
|
55
|
-
return desc;
|
|
56
|
-
});
|
|
57
|
-
this.dataProvider = computed(() => {
|
|
58
|
-
const revModel = this.#revModel();
|
|
59
|
-
const selectedRevisionEntity = this.selectedRevisionEntity();
|
|
60
|
-
if (!revModel || !selectedRevisionEntity?.entityName) {
|
|
61
|
-
return undefined;
|
|
62
|
-
}
|
|
63
|
-
const entityName = selectedRevisionEntity.entityName;
|
|
64
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
65
|
-
return tableviewDataProvider({ service: AuditRevisionsApiService }).withGetAll((params, service) => selectedRevisionEntity.entityName
|
|
66
|
-
? service.listRevisionsWithStateForEntityType(params, entityName).pipe(map(res => {
|
|
67
|
-
const revEntityWithStateAndIdList = [];
|
|
68
|
-
for (const revEntityWithState of res.data) {
|
|
69
|
-
const revEntityWithStateAndId = {
|
|
70
|
-
mergedId: revEntityWithState.revEntity?.['rev'] + '_' + revEntityWithState.entityState?.['id'],
|
|
71
|
-
revType: revEntityWithState.revType,
|
|
72
|
-
revEntity: revEntityWithState.revEntity,
|
|
73
|
-
entityState: revEntityWithState.entityState,
|
|
74
|
-
entityClassName: revEntityWithState.entityClassName
|
|
75
|
-
};
|
|
76
|
-
revEntityWithStateAndIdList.push(revEntityWithStateAndId);
|
|
77
|
-
}
|
|
78
|
-
return { data: revEntityWithStateAndIdList, totalCount: res.totalCount };
|
|
79
|
-
}))
|
|
80
|
-
: throwError(() => new CommonsInternalError('No revision entity is provided for list.')));
|
|
81
|
-
});
|
|
82
|
-
this.actions = computed(() => {
|
|
83
|
-
const selectedRevisionEntity = this.selectedRevisionEntity();
|
|
84
|
-
const descriptor = this.descriptor();
|
|
85
|
-
if (!selectedRevisionEntity?.entityName || !descriptor) {
|
|
86
|
-
return [];
|
|
87
|
-
}
|
|
88
|
-
const entityName = selectedRevisionEntity.entityName;
|
|
89
|
-
const detailsAction = tableviewActionDetailsOnTable(descriptor.model, descriptor.detailsEditor, {
|
|
90
|
-
table: descriptor.table,
|
|
91
|
-
serviceProvider: AuditRevisionsApiService,
|
|
92
|
-
injector: this.#injector
|
|
93
|
-
})
|
|
94
|
-
?.withFetchFunction(ctx => {
|
|
95
|
-
if (!entityName) {
|
|
96
|
-
return throwError(() => new CommonsInternalError('No revision entity is provided for details.'));
|
|
97
|
-
}
|
|
98
|
-
if (!ctx.parameters.itemId) {
|
|
99
|
-
return throwError(() => new CommonsInternalError('No item id for revision entity details is provided.'));
|
|
100
|
-
}
|
|
101
|
-
const revId = ctx.parameters.itemId.toString().split('_')[0];
|
|
102
|
-
const itemId = ctx.parameters.itemId.toString().split('_')[1];
|
|
103
|
-
return ctx.serviceInstance.fetchRevisionsWithStateForEntityType(entityName, revId, itemId);
|
|
104
|
-
})
|
|
105
|
-
?.withEditorTitle('pages.entityRevisions.actions.details.editor.title');
|
|
106
|
-
return detailsAction ? [detailsAction] : [];
|
|
107
|
-
});
|
|
108
|
-
this.revisionEntitiesLookupProvider = lookupDataProvider({ service: AuditService }).withLookup(() => this.#auditService.auditModel$.pipe(map(model => {
|
|
109
|
-
const modelI18n = model;
|
|
110
|
-
modelI18n.sort((m1, m2) => {
|
|
111
|
-
if (m1.entityName && m2.entityName) {
|
|
112
|
-
return m1.entityName.localeCompare(m2.entityName);
|
|
113
|
-
}
|
|
114
|
-
else if (m1.entityName && !m2.entityName) {
|
|
115
|
-
return 1;
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
return -1;
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
modelI18n.forEach(item => {
|
|
122
|
-
item.entityNameI18n = item.entityName ? getI18nAuditEntityName(this.#translate, item.entityName) : undefined;
|
|
123
|
-
});
|
|
124
|
-
return modelI18n;
|
|
125
|
-
})));
|
|
126
|
-
this.showTableview = signal(false);
|
|
127
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
128
|
-
this.#showTableviewEffectRef = effectWithDeps([this.descriptor], descriptor => {
|
|
129
|
-
if (descriptor) {
|
|
130
|
-
this.showTableview.set(true);
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
#injector;
|
|
135
|
-
#router;
|
|
136
|
-
#route;
|
|
137
|
-
#translate;
|
|
138
|
-
#auditService;
|
|
139
|
-
#revModel;
|
|
140
|
-
#auditModel;
|
|
141
|
-
#entityClass;
|
|
142
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
143
|
-
#showTableviewEffectRef;
|
|
144
|
-
onRevisionEntityChange(value) {
|
|
145
|
-
this.showTableview.set(false);
|
|
146
|
-
const currentUrl = this.#router.url;
|
|
147
|
-
const routePrefix = currentUrl.substring(0, currentUrl.lastIndexOf('/audit/entity-revisions') + '/audit/entity-revisions'.length);
|
|
148
|
-
if (value) {
|
|
149
|
-
this.#router.navigate([routePrefix, value.entityName]);
|
|
150
|
-
}
|
|
151
|
-
else {
|
|
152
|
-
this.#router.navigate([routePrefix]);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AuditEntityRevisionsPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: AuditEntityRevisionsPageComponent, isStandalone: true, selector: "mng-audit-entity-revisions-page", providers: [AuditRevisionsApiService], ngImport: i0, template: "<div class=\"card\">\n <div class=\"field mb-0\">\n <mng-dropdown\n id=\"revisionEntityDropdown\"\n [placeholder]=\"'pages.entityRevisions.dropdown.placeholder' | translate\"\n optionsLabelProperty=\"entityNameI18n\"\n [ngModel]=\"selectedRevisionEntity()\"\n (valueChange)=\"onRevisionEntityChange($event)\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"\n [showClear]=\"true\"></mng-dropdown>\n @if (!selectedRevisionEntity()) {\n <small class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n }\n </div>\n</div>\n@if (showTableview() && descriptor()) {\n <mng-tableview [descriptor]=\"descriptor()!\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n", dependencies: [{ kind: "component", type: DropdownComponent, selector: "mng-dropdown", inputs: ["dataProvider", "options", "optionsTrackProperty", "optionsLabelProperty", "optionsLabelTranslate", "optionsValueProperty", "optionsDisabledProperty", "multiselect", "placeholder", "showClear", "selectFirstItem", "className", "dropdownClassName", "changeValueOnBlur", "loading", "disabled", "allowInput", "appendTo", "inlineSearch", "searchTrim"], outputs: ["valueChange", "blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: TableviewComponent, selector: "mng-tableview", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
157
|
-
}
|
|
158
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AuditEntityRevisionsPageComponent, decorators: [{
|
|
159
|
-
type: Component,
|
|
160
|
-
args: [{ standalone: true, selector: 'mng-audit-entity-revisions-page', imports: [DropdownComponent, FormsModule, TranslateModule, FormlyModule, TableviewComponent], providers: [AuditRevisionsApiService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"card\">\n <div class=\"field mb-0\">\n <mng-dropdown\n id=\"revisionEntityDropdown\"\n [placeholder]=\"'pages.entityRevisions.dropdown.placeholder' | translate\"\n optionsLabelProperty=\"entityNameI18n\"\n [ngModel]=\"selectedRevisionEntity()\"\n (valueChange)=\"onRevisionEntityChange($event)\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"\n [showClear]=\"true\"></mng-dropdown>\n @if (!selectedRevisionEntity()) {\n <small class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n }\n </div>\n</div>\n@if (showTableview() && descriptor()) {\n <mng-tableview [descriptor]=\"descriptor()!\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n" }]
|
|
161
|
-
}] });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZW50aXR5LXJldmlzaW9ucy9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZUFBZSxFQUFFLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLG9CQUFvQixFQUFZLGNBQWMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxrQkFB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cEMsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWxJLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMzRCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0wsQ0FBQzsrR0F2SVEsaUNBQWlDO21HQUFqQyxpQ0FBaUMsOEVBSC9CLENBQUMsd0JBQXdCLENBQUMsMEJDN0J6QyxzMkJBb0JBLDRDRFFjLGlCQUFpQiwrYkFBRSxXQUFXLDhWQUFFLGVBQWUsMkZBQUUsWUFBWSwrQkFBRSxrQkFBa0I7OzRGQUlsRixpQ0FBaUM7a0JBUjdDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGlDQUFpQyxXQUVsQyxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixDQUFDLGFBQ2pGLENBQUMsd0JBQXdCLENBQUMsbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdG9yLCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQge0Zvcm1seU1vZHVsZX0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge3Rocm93RXJyb3J9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtDb21tb25zSW50ZXJuYWxFcnJvciwgTnVsbGFibGUsIGVmZmVjdFdpdGhEZXBzfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtEcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9mb3JtJztcbmltcG9ydCB7bG9va3VwRGF0YVByb3ZpZGVyfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2Zvcm0vYXBpJztcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5pbXBvcnQge3RhYmxldmlld0FjdGlvbkRldGFpbHNPblRhYmxlLCB0YWJsZXZpZXdEYXRhUHJvdmlkZXIsIHRhYmxldmlld0Rlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbmltcG9ydCB7R3VpRW50aXR5TW9kZWxEdG99IGZyb20gJy4uLy4uLy4uL2FwaS9tb2RlbHMvZ3VpRW50aXR5TW9kZWwnO1xuaW1wb3J0IHtBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC1yZXZpc2lvbnMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHtBdWRpdFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7YXVkaXRCdWlsZFRhYmxldmlld0VudGl0eVJldmlzaW9ufSBmcm9tICcuLi8uLi8uLi9oZWxwZXJzL2Rlc2NyaXB0b3InO1xuaW1wb3J0IHtnZXRJMThuQXVkaXRFbnRpdHlOYW1lfSBmcm9tICcuLi8uLi8uLi9oZWxwZXJzL2kxOG4nO1xuaW1wb3J0IHtHdWlFbnRpdHlNb2RlbFdpdGhJMThufSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbCc7XG5pbXBvcnQge1JldkVudGl0eVdpdGhJZH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JldkVudGl0eVdpdGhJZC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctYXVkaXQtZW50aXR5LXJldmlzaW9ucy1wYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBpbXBvcnRzOiBbRHJvcGRvd25Db21wb25lbnQsIEZvcm1zTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEZvcm1seU1vZHVsZSwgVGFibGV2aWV3Q29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2VdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEF1ZGl0RW50aXR5UmV2aXNpb25zUGFnZUNvbXBvbmVudCB7XG4gICAgcmVhZG9ubHkgI2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgICByZWFkb25seSAjcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcmVhZG9ubHkgI3JvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICByZWFkb25seSAjdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICAgIHJlYWRvbmx5ICNhdWRpdFNlcnZpY2UgPSBpbmplY3QoQXVkaXRTZXJ2aWNlKTtcblxuICAgIHJlYWRvbmx5ICNyZXZNb2RlbCA9IHRvU2lnbmFsKHRoaXMuI2F1ZGl0U2VydmljZS5yZXZNb2RlbCQpO1xuICAgIHJlYWRvbmx5ICNhdWRpdE1vZGVsID0gdG9TaWduYWwodGhpcy4jYXVkaXRTZXJ2aWNlLmF1ZGl0TW9kZWwkKTtcbiAgICByZWFkb25seSAjZW50aXR5Q2xhc3MgPSB0b1NpZ25hbCh0aGlzLiNyb3V0ZS5wYXJhbU1hcC5waXBlKG1hcChwbSA9PiBwbS5nZXQoJ2VudGl0eUNsYXNzJykgPz8gdW5kZWZpbmVkKSkpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGVudGl0aWVzID0gdGhpcy4jYXVkaXRNb2RlbCgpO1xuICAgICAgICBjb25zdCBlbnRpdHlDbGFzcyA9IHRoaXMuI2VudGl0eUNsYXNzKCk7XG4gICAgICAgIGlmIChlbnRpdHlDbGFzcyAmJiBlbnRpdGllcykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBlIG9mIGVudGl0aWVzKSB7XG4gICAgICAgICAgICAgICAgaWYgKGUuZW50aXR5TmFtZSA9PT0gZW50aXR5Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc2NyaXB0b3IgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJldk1vZGVsID0gdGhpcy4jcmV2TW9kZWwoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBpZiAoIXJldk1vZGVsIHx8ICFzZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVzYyA9IHRhYmxldmlld0Rlc2NyaXB0b3I8UmV2RW50aXR5V2l0aElkPih7aWQ6ICdtZXJnZWRJZCd9KTtcbiAgICAgICAgYXVkaXRCdWlsZFRhYmxldmlld0VudGl0eVJldmlzaW9uKHRoaXMuI3RyYW5zbGF0ZSwgZGVzYywgcmV2TW9kZWwsIHNlbGVjdGVkUmV2aXNpb25FbnRpdHkpO1xuICAgICAgICBkZXNjLnRhYmxlLndpdGhUaXRsZShnZXRJMThuQXVkaXRFbnRpdHlOYW1lKHRoaXMuI3RyYW5zbGF0ZSwgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lKSk7XG4gICAgICAgIGRlc2MudGFibGUud2l0aENvbHVtbnNSZXNpemFibGUoKTtcbiAgICAgICAgZGVzYy50YWJsZS53aXRoQ3VycmVudENvbHVtbnNSZW9yZGVyYWJsZSgpO1xuICAgICAgICBkZXNjLnRhYmxlLndpdGhDdXJyZW50Q29sdW1uc1RvZ2dsZWFibGUoKTtcblxuICAgICAgICByZXR1cm4gZGVzYztcbiAgICB9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGF0YVByb3ZpZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCByZXZNb2RlbCA9IHRoaXMuI3Jldk1vZGVsKCk7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkUmV2aXNpb25FbnRpdHkgPSB0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHkoKTtcbiAgICAgICAgaWYgKCFyZXZNb2RlbCB8fCAhc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT8uZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVudGl0eU5hbWUgPSBzZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWU7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEYXRhUHJvdmlkZXI8UmV2RW50aXR5V2l0aElkLCBBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2U+KHtzZXJ2aWNlOiBBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2V9KS53aXRoR2V0QWxsKChwYXJhbXMsIHNlcnZpY2UpID0+XG4gICAgICAgICAgICBzZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWVcbiAgICAgICAgICAgICAgICA/IHNlcnZpY2UubGlzdFJldmlzaW9uc1dpdGhTdGF0ZUZvckVudGl0eVR5cGUocGFyYW1zLCBlbnRpdHlOYW1lKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIG1hcChyZXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QgPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCByZXZFbnRpdHlXaXRoU3RhdGUgb2YgcmVzLmRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZUFuZElkOiBSZXZFbnRpdHlXaXRoSWQgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVyZ2VkSWQ6IHJldkVudGl0eVdpdGhTdGF0ZS5yZXZFbnRpdHk/LlsncmV2J10gKyAnXycgKyByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5U3RhdGU/LlsnaWQnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZUeXBlOiByZXZFbnRpdHlXaXRoU3RhdGUucmV2VHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHk6IHJldkVudGl0eVdpdGhTdGF0ZS5yZXZFbnRpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5U3RhdGU6IHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHlDbGFzc05hbWU6IHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlDbGFzc05hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QucHVzaChyZXZFbnRpdHlXaXRoU3RhdGVBbmRJZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtkYXRhOiByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QsIHRvdGFsQ291bnQ6IHJlcy50b3RhbENvdW50fTtcbiAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGhyb3dFcnJvcigoKSA9PiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgbGlzdC4nKSlcbiAgICAgICAgKTtcbiAgICB9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWN0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSgpO1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gdGhpcy5kZXNjcmlwdG9yKCk7XG4gICAgICAgIGlmICghc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT8uZW50aXR5TmFtZSB8fCAhZGVzY3JpcHRvcikge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVudGl0eU5hbWUgPSBzZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWU7XG4gICAgICAgIGNvbnN0IGRldGFpbHNBY3Rpb24gPSB0YWJsZXZpZXdBY3Rpb25EZXRhaWxzT25UYWJsZShkZXNjcmlwdG9yLm1vZGVsLCBkZXNjcmlwdG9yLmRldGFpbHNFZGl0b3IsIHtcbiAgICAgICAgICAgIHRhYmxlOiBkZXNjcmlwdG9yLnRhYmxlLFxuICAgICAgICAgICAgc2VydmljZVByb3ZpZGVyOiBBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2UsXG4gICAgICAgICAgICBpbmplY3RvcjogdGhpcy4jaW5qZWN0b3JcbiAgICAgICAgfSlcbiAgICAgICAgICAgID8ud2l0aEZldGNoRnVuY3Rpb24oY3R4ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdObyByZXZpc2lvbiBlbnRpdHkgaXMgcHJvdmlkZWQgZm9yIGRldGFpbHMuJykpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIWN0eC5wYXJhbWV0ZXJzLml0ZW1JZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoJ05vIGl0ZW0gaWQgZm9yIHJldmlzaW9uIGVudGl0eSBkZXRhaWxzIGlzIHByb3ZpZGVkLicpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcmV2SWQgPSBjdHgucGFyYW1ldGVycy5pdGVtSWQudG9TdHJpbmcoKS5zcGxpdCgnXycpWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1JZCA9IGN0eC5wYXJhbWV0ZXJzLml0ZW1JZC50b1N0cmluZygpLnNwbGl0KCdfJylbMV07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGN0eC5zZXJ2aWNlSW5zdGFuY2UuZmV0Y2hSZXZpc2lvbnNXaXRoU3RhdGVGb3JFbnRpdHlUeXBlKGVudGl0eU5hbWUsIHJldklkLCBpdGVtSWQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgID8ud2l0aEVkaXRvclRpdGxlKCdwYWdlcy5lbnRpdHlSZXZpc2lvbnMuYWN0aW9ucy5kZXRhaWxzLmVkaXRvci50aXRsZScpO1xuICAgICAgICByZXR1cm4gZGV0YWlsc0FjdGlvbiA/IFtkZXRhaWxzQWN0aW9uXSA6IFtdO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJldmlzaW9uRW50aXRpZXNMb29rdXBQcm92aWRlciA9IGxvb2t1cERhdGFQcm92aWRlcjxHdWlFbnRpdHlNb2RlbFdpdGhJMThuLCBBdWRpdFNlcnZpY2U+KHtzZXJ2aWNlOiBBdWRpdFNlcnZpY2V9KS53aXRoTG9va3VwKCgpID0+XG4gICAgICAgIHRoaXMuI2F1ZGl0U2VydmljZS5hdWRpdE1vZGVsJC5waXBlKFxuICAgICAgICAgICAgbWFwKG1vZGVsID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtb2RlbEkxOG4gPSBtb2RlbCBhcyBHdWlFbnRpdHlNb2RlbFdpdGhJMThuW107XG4gICAgICAgICAgICAgICAgbW9kZWxJMThuLnNvcnQoKG0xLCBtMikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAobTEuZW50aXR5TmFtZSAmJiBtMi5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbTEuZW50aXR5TmFtZS5sb2NhbGVDb21wYXJlKG0yLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG0xLmVudGl0eU5hbWUgJiYgIW0yLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgbW9kZWxJMThuLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uZW50aXR5TmFtZUkxOG4gPSBpdGVtLmVudGl0eU5hbWUgPyBnZXRJMThuQXVkaXRFbnRpdHlOYW1lKHRoaXMuI3RyYW5zbGF0ZSwgaXRlbS5lbnRpdHlOYW1lKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbW9kZWxJMThuO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICk7XG4gICAgcHJvdGVjdGVkIHNob3dUYWJsZXZpZXcgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICNzaG93VGFibGV2aWV3RWZmZWN0UmVmID0gZWZmZWN0V2l0aERlcHMoW3RoaXMuZGVzY3JpcHRvcl0sIGRlc2NyaXB0b3IgPT4ge1xuICAgICAgICBpZiAoZGVzY3JpcHRvcikge1xuICAgICAgICAgICAgdGhpcy5zaG93VGFibGV2aWV3LnNldCh0cnVlKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIG9uUmV2aXNpb25FbnRpdHlDaGFuZ2UodmFsdWU6IE51bGxhYmxlPEd1aUVudGl0eU1vZGVsRHRvPikge1xuICAgICAgICB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KGZhbHNlKTtcbiAgICAgICAgY29uc3QgY3VycmVudFVybCA9IHRoaXMuI3JvdXRlci51cmw7XG4gICAgICAgIGNvbnN0IHJvdXRlUHJlZml4ID0gY3VycmVudFVybC5zdWJzdHJpbmcoMCwgY3VycmVudFVybC5sYXN0SW5kZXhPZignL2F1ZGl0L2VudGl0eS1yZXZpc2lvbnMnKSArICcvYXVkaXQvZW50aXR5LXJldmlzaW9ucycubGVuZ3RoKTtcblxuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuI3JvdXRlci5uYXZpZ2F0ZShbcm91dGVQcmVmaXgsIHZhbHVlLmVudGl0eU5hbWVdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuI3JvdXRlci5uYXZpZ2F0ZShbcm91dGVQcmVmaXhdKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjYXJkXCI+XG4gICAgPGRpdiBjbGFzcz1cImZpZWxkIG1iLTBcIj5cbiAgICAgICAgPG1uZy1kcm9wZG93blxuICAgICAgICAgICAgaWQ9XCJyZXZpc2lvbkVudGl0eURyb3Bkb3duXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIncGFnZXMuZW50aXR5UmV2aXNpb25zLmRyb3Bkb3duLnBsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICBvcHRpb25zTGFiZWxQcm9wZXJ0eT1cImVudGl0eU5hbWVJMThuXCJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkUmV2aXNpb25FbnRpdHkoKVwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25SZXZpc2lvbkVudGl0eUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgIFtkYXRhUHJvdmlkZXJdPVwicmV2aXNpb25FbnRpdGllc0xvb2t1cFByb3ZpZGVyXCJcbiAgICAgICAgICAgIFtzaG93Q2xlYXJdPVwidHJ1ZVwiPjwvbW5nLWRyb3Bkb3duPlxuICAgICAgICBAaWYgKCFzZWxlY3RlZFJldmlzaW9uRW50aXR5KCkpIHtcbiAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImJsb2NrXCI+XG4gICAgICAgICAgICAgICAge3sgJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy5kcm9wZG93bi5oZWxwVGV4dCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvc21hbGw+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuQGlmIChzaG93VGFibGV2aWV3KCkgJiYgZGVzY3JpcHRvcigpKSB7XG4gICAgPG1uZy10YWJsZXZpZXcgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvcigpIVwiIFtkYXRhUHJvdmlkZXJdPVwiZGF0YVByb3ZpZGVyKClcIiBbYWN0aW9uc109XCJhY3Rpb25zKClcIj48L21uZy10YWJsZXZpZXc+XG59XG4iXX0=
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Injector, computed, inject, signal } from '@angular/core';
|
|
2
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import { map } from 'rxjs/operators';
|
|
5
|
-
import { itemIdToDefined } from '@mediusinc/mng-commons/core';
|
|
6
|
-
import { model } from '@mediusinc/mng-commons/model';
|
|
7
|
-
import { TableviewComponent } from '@mediusinc/mng-commons/tableview';
|
|
8
|
-
import { TableviewEditorTypeEnum, editorDescriptor, tableviewActionDetailsOnTable, tableviewDataProvider, tableviewDescriptor } from '@mediusinc/mng-commons/tableview/api';
|
|
9
|
-
import { AuditRevisionsApiService } from '../../../api/services/audit-revisions-api.service';
|
|
10
|
-
import { AuditService } from '../../../api/services/audit.service';
|
|
11
|
-
import { auditAddColumnsFromModel, auditAddFieldsFromModel } from '../../../helpers/descriptor';
|
|
12
|
-
import { EntityChangesFieldComponent } from '../../entity-changes-field/entity-changes-field.component';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class AuditRevisionsPageComponent {
|
|
15
|
-
constructor() {
|
|
16
|
-
this.#injector = inject(Injector);
|
|
17
|
-
this.#translate = inject(TranslateService);
|
|
18
|
-
this.#auditService = inject(AuditService);
|
|
19
|
-
this.#revModel = toSignal(this.#auditService.revModel$);
|
|
20
|
-
this.showTableview = computed(() => this.#revModel() != null);
|
|
21
|
-
this.descriptor = computed(() => {
|
|
22
|
-
const revModel = this.#revModel();
|
|
23
|
-
if (revModel) {
|
|
24
|
-
const idProperty = revModel.properties?.filter(prop => prop.isId).map(prop => prop.resolvedPropertyName)[0];
|
|
25
|
-
const revEntModel = model({ id: 'rev', title: 'rev', i18nBase: 'MngRevEntity' });
|
|
26
|
-
if (idProperty)
|
|
27
|
-
revEntModel.withIdPropertyUnsafe(idProperty);
|
|
28
|
-
const desc = tableviewDescriptor(revEntModel);
|
|
29
|
-
const detailsDescriptor = editorDescriptor({ i18nBase: 'MngRevEntity', tableviewEditorType: TableviewEditorTypeEnum.Details });
|
|
30
|
-
detailsDescriptor.model.withIdPropertyUnsafe('revEntity.' + idProperty);
|
|
31
|
-
if (revModel.properties) {
|
|
32
|
-
auditAddColumnsFromModel(this.#translate, desc.table, revModel.entityName ?? '', revModel.properties);
|
|
33
|
-
auditAddFieldsFromModel(this.#translate, detailsDescriptor, revModel.entityName ?? '', revModel.properties);
|
|
34
|
-
}
|
|
35
|
-
detailsDescriptor
|
|
36
|
-
.addField('entityNameChangesMap')
|
|
37
|
-
.asCustomComponent(EntityChangesFieldComponent, {
|
|
38
|
-
fieldWrappers: ['field-no-label'],
|
|
39
|
-
inputs: { injector: this.#injector }
|
|
40
|
-
})
|
|
41
|
-
.withDisabled();
|
|
42
|
-
desc.withDetailsDescriptor(detailsDescriptor); // MngRevEntity is extended by MngRevEntityWithChangesDto, so no real harm here
|
|
43
|
-
return desc;
|
|
44
|
-
}
|
|
45
|
-
return tableviewDescriptor();
|
|
46
|
-
});
|
|
47
|
-
this.dataProvider = signal(tableviewDataProvider({ service: AuditRevisionsApiService }).withGetAll((params, service) => service.getRevisionList(params).pipe(map(res => ({ data: res.data, totalCount: res.totalCount })))));
|
|
48
|
-
this.actions = computed(() => {
|
|
49
|
-
const detailsAction = tableviewActionDetailsOnTable(this.descriptor().model, this.descriptor().detailsEditor, {
|
|
50
|
-
table: this.descriptor().table,
|
|
51
|
-
serviceProvider: AuditRevisionsApiService,
|
|
52
|
-
injector: this.#injector
|
|
53
|
-
})?.withFetchFunction(ctx => {
|
|
54
|
-
return ctx.serviceInstance.getAllChangesForRevision(itemIdToDefined(ctx.parameters.itemId)).pipe(map(item => {
|
|
55
|
-
const revEntityWithChanges = {
|
|
56
|
-
rev: ctx.parameters.itemId,
|
|
57
|
-
revEntity: item.revEntity,
|
|
58
|
-
entityNameChangesMap: item.entityNameChangesMap
|
|
59
|
-
};
|
|
60
|
-
return revEntityWithChanges;
|
|
61
|
-
}));
|
|
62
|
-
});
|
|
63
|
-
return detailsAction ? [detailsAction] : [];
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
#injector;
|
|
67
|
-
#translate;
|
|
68
|
-
#auditService;
|
|
69
|
-
#revModel;
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AuditRevisionsPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: AuditRevisionsPageComponent, isStandalone: true, selector: "mng-audit-revisions-page", providers: [AuditRevisionsApiService], ngImport: i0, template: "@if (showTableview()) {\n <mng-tableview [descriptor]=\"descriptor()\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n", dependencies: [{ kind: "component", type: TableviewComponent, selector: "mng-tableview", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
72
|
-
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AuditRevisionsPageComponent, decorators: [{
|
|
74
|
-
type: Component,
|
|
75
|
-
args: [{ standalone: true, selector: 'mng-audit-revisions-page', imports: [TableviewComponent], providers: [AuditRevisionsApiService], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (showTableview()) {\n <mng-tableview [descriptor]=\"descriptor()\" [dataProvider]=\"dataProvider()\" [actions]=\"actions()\"></mng-tableview>\n}\n" }]
|
|
76
|
-
}] });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL3JldmlzaW9ucy9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvcmV2aXNpb25zL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUsNkJBQTZCLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUcxSyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUMzRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDakUsT0FBTyxFQUFDLHdCQUF3QixFQUFFLHVCQUF1QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFHOUYsT0FBTyxFQUFDLDJCQUEy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QTNCLDJCQUEyQix1RUFIekIsQ0FBQyx3QkFBd0IsQ0FBQywwQkN4QnpDLDJKQUdBLDRDRG9CYyxrQkFBa0I7OzRGQUluQiwyQkFBMkI7a0JBUnZDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLDBCQUEwQixXQUUzQixDQUFDLGtCQUFrQixDQUFDLGFBQ2xCLENBQUMsd0JBQXdCLENBQUMsbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdG9yLCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtpdGVtSWRUb0RlZmluZWR9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge21vZGVsfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldyc7XG5pbXBvcnQge1RhYmxldmlld0VkaXRvclR5cGVFbnVtLCBlZGl0b3JEZXNjcmlwdG9yLCB0YWJsZXZpZXdBY3Rpb25EZXRhaWxzT25UYWJsZSwgdGFibGV2aWV3RGF0YVByb3ZpZGVyLCB0YWJsZXZpZXdEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxldmlldy9hcGknO1xuXG5pbXBvcnQge1JldkVudGl0eVdpdGhDaGFuZ2VzRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL3JldkVudGl0eVdpdGhDaGFuZ2VzRHRvJztcbmltcG9ydCB7QXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQtcmV2aXNpb25zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7QXVkaXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQuc2VydmljZSc7XG5pbXBvcnQge2F1ZGl0QWRkQ29sdW1uc0Zyb21Nb2RlbCwgYXVkaXRBZGRGaWVsZHNGcm9tTW9kZWx9IGZyb20gJy4uLy4uLy4uL2hlbHBlcnMvZGVzY3JpcHRvcic7XG5pbXBvcnQge1JldkVudGl0eURldGFpbGVkfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2LWVudGl0eS1kZXRhaWxlZC5tb2RlbCc7XG5pbXBvcnQge1JldkVudGl0eX0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Jldi1lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHtFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnR9IGZyb20gJy4uLy4uL2VudGl0eS1jaGFuZ2VzLWZpZWxkL2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctYXVkaXQtcmV2aXNpb25zLXBhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW1RhYmxldmlld0NvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdWRpdFJldmlzaW9uc1BhZ2VDb21wb25lbnQge1xuICAgIHJlYWRvbmx5ICNpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgcmVhZG9ubHkgI3RyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgICByZWFkb25seSAjYXVkaXRTZXJ2aWNlID0gaW5qZWN0KEF1ZGl0U2VydmljZSk7XG5cbiAgICByZWFkb25seSAjcmV2TW9kZWwgPSB0b1NpZ25hbCh0aGlzLiNhdWRpdFNlcnZpY2UucmV2TW9kZWwkKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2hvd1RhYmxldmlldyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuI3Jldk1vZGVsKCkgIT0gbnVsbCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVzY3JpcHRvciA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgcmV2TW9kZWwgPSB0aGlzLiNyZXZNb2RlbCgpO1xuICAgICAgICBpZiAocmV2TW9kZWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGlkUHJvcGVydHkgPSByZXZNb2RlbC5wcm9wZXJ0aWVzPy5maWx0ZXIocHJvcCA9PiBwcm9wLmlzSWQpLm1hcChwcm9wID0+IHByb3AucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpWzBdO1xuXG4gICAgICAgICAgICBjb25zdCByZXZFbnRNb2RlbCA9IG1vZGVsPFJldkVudGl0eVdpdGhDaGFuZ2VzRHRvPih7aWQ6ICdyZXYnLCB0aXRsZTogJ3JldicsIGkxOG5CYXNlOiAnTW5nUmV2RW50aXR5J30pO1xuICAgICAgICAgICAgaWYgKGlkUHJvcGVydHkpIHJldkVudE1vZGVsLndpdGhJZFByb3BlcnR5VW5zYWZlKGlkUHJvcGVydHkpO1xuXG4gICAgICAgICAgICBjb25zdCBkZXNjID0gdGFibGV2aWV3RGVzY3JpcHRvcjxSZXZFbnRpdHlXaXRoQ2hhbmdlc0R0bywga2V5b2YgUmV2RW50aXR5LCBrZXlvZiBSZXZFbnRpdHksIHVuZGVmaW5lZCwgUmV2RW50aXR5PihyZXZFbnRNb2RlbCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGRldGFpbHNEZXNjcmlwdG9yID0gZWRpdG9yRGVzY3JpcHRvcjxSZXZFbnRpdHlXaXRoQ2hhbmdlc0R0bz4oe2kxOG5CYXNlOiAnTW5nUmV2RW50aXR5JywgdGFibGV2aWV3RWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uRGV0YWlsc30pO1xuICAgICAgICAgICAgZGV0YWlsc0Rlc2NyaXB0b3IubW9kZWwud2l0aElkUHJvcGVydHlVbnNhZmUoJ3JldkVudGl0eS4nICsgaWRQcm9wZXJ0eSk7XG5cbiAgICAgICAgICAgIGlmIChyZXZNb2RlbC5wcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgYXVkaXRBZGRDb2x1bW5zRnJvbU1vZGVsKHRoaXMuI3RyYW5zbGF0ZSwgZGVzYy50YWJsZSwgcmV2TW9kZWwuZW50aXR5TmFtZSA/PyAnJywgcmV2TW9kZWwucHJvcGVydGllcyk7XG4gICAgICAgICAgICAgICAgYXVkaXRBZGRGaWVsZHNGcm9tTW9kZWw8UmV2RW50aXR5V2l0aENoYW5nZXNEdG8+KHRoaXMuI3RyYW5zbGF0ZSwgZGV0YWlsc0Rlc2NyaXB0b3IsIHJldk1vZGVsLmVudGl0eU5hbWUgPz8gJycsIHJldk1vZGVsLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkZXRhaWxzRGVzY3JpcHRvclxuICAgICAgICAgICAgICAgIC5hZGRGaWVsZCgnZW50aXR5TmFtZUNoYW5nZXNNYXAnKVxuICAgICAgICAgICAgICAgIC5hc0N1c3RvbUNvbXBvbmVudChFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGRXcmFwcGVyczogWydmaWVsZC1uby1sYWJlbCddLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dHM6IHtpbmplY3RvcjogdGhpcy4jaW5qZWN0b3J9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAud2l0aERpc2FibGVkKCk7XG5cbiAgICAgICAgICAgIGRlc2Mud2l0aERldGFpbHNEZXNjcmlwdG9yKGRldGFpbHNEZXNjcmlwdG9yKTsgLy8gTW5nUmV2RW50aXR5IGlzIGV4dGVuZGVkIGJ5IE1uZ1JldkVudGl0eVdpdGhDaGFuZ2VzRHRvLCBzbyBubyByZWFsIGhhcm0gaGVyZVxuXG4gICAgICAgICAgICByZXR1cm4gZGVzYztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGFibGV2aWV3RGVzY3JpcHRvcjxSZXZFbnRpdHk+KCk7XG4gICAgfSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRhdGFQcm92aWRlciA9IHNpZ25hbChcbiAgICAgICAgdGFibGV2aWV3RGF0YVByb3ZpZGVyPFJldkVudGl0eSwgQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlPih7c2VydmljZTogQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSkud2l0aEdldEFsbCgocGFyYW1zLCBzZXJ2aWNlKSA9PlxuICAgICAgICAgICAgc2VydmljZS5nZXRSZXZpc2lvbkxpc3QocGFyYW1zKS5waXBlKG1hcChyZXMgPT4gKHtkYXRhOiByZXMuZGF0YSwgdG90YWxDb3VudDogcmVzLnRvdGFsQ291bnR9KSkpXG4gICAgICAgIClcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBhY3Rpb25zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBkZXRhaWxzQWN0aW9uID0gdGFibGV2aWV3QWN0aW9uRGV0YWlsc09uVGFibGUodGhpcy5kZXNjcmlwdG9yKCkubW9kZWwsIHRoaXMuZGVzY3JpcHRvcigpLmRldGFpbHNFZGl0b3IsIHtcbiAgICAgICAgICAgIHRhYmxlOiB0aGlzLmRlc2NyaXB0b3IoKS50YWJsZSxcbiAgICAgICAgICAgIHNlcnZpY2VQcm92aWRlcjogQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgaW5qZWN0b3I6IHRoaXMuI2luamVjdG9yXG4gICAgICAgIH0pPy53aXRoRmV0Y2hGdW5jdGlvbihjdHggPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGN0eC5zZXJ2aWNlSW5zdGFuY2UuZ2V0QWxsQ2hhbmdlc0ZvclJldmlzaW9uKGl0ZW1JZFRvRGVmaW5lZChjdHgucGFyYW1ldGVycy5pdGVtSWQpKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aENoYW5nZXM6IFJldkVudGl0eURldGFpbGVkID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV2OiBjdHgucGFyYW1ldGVycy5pdGVtSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHk6IGl0ZW0ucmV2RW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5TmFtZUNoYW5nZXNNYXA6IGl0ZW0uZW50aXR5TmFtZUNoYW5nZXNNYXBcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJldkVudGl0eVdpdGhDaGFuZ2VzO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gZGV0YWlsc0FjdGlvbiA/IFtkZXRhaWxzQWN0aW9uXSA6IFtdO1xuICAgIH0pO1xufVxuIiwiQGlmIChzaG93VGFibGV2aWV3KCkpIHtcbiAgICA8bW5nLXRhYmxldmlldyBbZGVzY3JpcHRvcl09XCJkZXNjcmlwdG9yKClcIiBbZGF0YVByb3ZpZGVyXT1cImRhdGFQcm92aWRlcigpXCIgW2FjdGlvbnNdPVwiYWN0aW9ucygpXCI+PC9tbmctdGFibGV2aWV3PlxufVxuIl19
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
import { lookupDataProvider } from '@mediusinc/mng-commons/form/api';
|
|
2
|
-
import { enumModelGeneric } from '@mediusinc/mng-commons/model';
|
|
3
|
-
import { GuiPropertyTypeDto } from '../api/models/guiPropertyType';
|
|
4
|
-
import { revisionTypeEnum } from '../api/models/revisionType';
|
|
5
|
-
import { getI18nAuditEntityProperty } from '../helpers/i18n';
|
|
6
|
-
export function auditAddColumnsFromModel(translate, descriptor, entityName, properties, modelType = undefined, addFilters = true, addSorts = true) {
|
|
7
|
-
for (const property of properties) {
|
|
8
|
-
if (!property.resolvedPropertyName) {
|
|
9
|
-
continue;
|
|
10
|
-
}
|
|
11
|
-
const isEnum = property.propertyType === GuiPropertyTypeDto.Enum;
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
-
let column = null;
|
|
14
|
-
if (isEnum) {
|
|
15
|
-
if (!property.possibleEnumValues) {
|
|
16
|
-
continue;
|
|
17
|
-
}
|
|
18
|
-
const enumModel = getEnumModel(property);
|
|
19
|
-
if (enumModel) {
|
|
20
|
-
column = descriptor.addColumnEnum(property.resolvedPropertyName, enumModel);
|
|
21
|
-
if (addFilters) {
|
|
22
|
-
descriptor.addFilterLookupEnum(column.property, enumModel, property.possibleEnumValues);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName);
|
|
27
|
-
if (addFilters) {
|
|
28
|
-
descriptor.addFilterLookupUnsafe(column.property, lookupDataProvider().withLookup(() => property.possibleEnumValues ?? []));
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
else if (property.propertyType === GuiPropertyTypeDto.Number) {
|
|
33
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName).asNumber();
|
|
34
|
-
}
|
|
35
|
-
else if (property.propertyType === GuiPropertyTypeDto.Boolean) {
|
|
36
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName).asBoolean();
|
|
37
|
-
}
|
|
38
|
-
else if (property.propertyType === GuiPropertyTypeDto.LocalDate) {
|
|
39
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName).asDate('dd. MM yyyy');
|
|
40
|
-
}
|
|
41
|
-
else if (property.propertyType === GuiPropertyTypeDto.OffsetDateTime) {
|
|
42
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName).asDate('dd. MM yyyy HH:mm');
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
// string / wildcard
|
|
46
|
-
column = descriptor.addColumnUnsafe(property.resolvedPropertyName).withTitle(getI18nAuditEntityProperty(translate, entityName, property.propertyName ?? '', modelType));
|
|
47
|
-
}
|
|
48
|
-
if (modelType) {
|
|
49
|
-
column.withGetter((value, item) => item?.[modelType]?.[property.resolvedPropertyName]);
|
|
50
|
-
}
|
|
51
|
-
column.withTitle(getI18nAuditEntityProperty(translate, entityName, property.propertyName ?? '', modelType));
|
|
52
|
-
if (!isEnum && addFilters) {
|
|
53
|
-
descriptor.addFilterFromColumnDescriptorUnsafe(column).withTitle(column.title ?? '');
|
|
54
|
-
}
|
|
55
|
-
if (addSorts) {
|
|
56
|
-
descriptor.withSortUnsafe(column.property);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
return descriptor;
|
|
60
|
-
}
|
|
61
|
-
export function auditAddFieldsFromModel(translate, descriptor, entityName, properties, modelType = 'revEntity') {
|
|
62
|
-
for (const property of properties) {
|
|
63
|
-
if (!property.resolvedPropertyName) {
|
|
64
|
-
continue;
|
|
65
|
-
}
|
|
66
|
-
const fieldPrepend = `${modelType}.`;
|
|
67
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
68
|
-
let field;
|
|
69
|
-
if (property.propertyType === GuiPropertyTypeDto.Enum) {
|
|
70
|
-
const enumModel = getEnumModel(property);
|
|
71
|
-
if (enumModel) {
|
|
72
|
-
if (!property.possibleEnumValues) {
|
|
73
|
-
continue;
|
|
74
|
-
}
|
|
75
|
-
field = descriptor.addFieldLookupEnum((fieldPrepend + property.resolvedPropertyName), enumModel, property.possibleEnumValues);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
else if (property.propertyType === GuiPropertyTypeDto.Number) {
|
|
82
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName).asNumber();
|
|
83
|
-
}
|
|
84
|
-
else if (property.propertyType === GuiPropertyTypeDto.Boolean) {
|
|
85
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName);
|
|
86
|
-
}
|
|
87
|
-
else if (property.propertyType === GuiPropertyTypeDto.LocalDate) {
|
|
88
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName).asDatePicker({ format: 'dd. MMM yyyy' });
|
|
89
|
-
}
|
|
90
|
-
else if (property.propertyType === GuiPropertyTypeDto.OffsetDateTime) {
|
|
91
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName).asDatePicker({
|
|
92
|
-
format: 'dd. MM yy',
|
|
93
|
-
showTime: true,
|
|
94
|
-
showSeconds: false
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
// string / wildcard
|
|
99
|
-
field = descriptor.addFieldUnsafe(fieldPrepend + property.resolvedPropertyName);
|
|
100
|
-
}
|
|
101
|
-
field.withLabel(getI18nAuditEntityProperty(translate, entityName, property.propertyName ?? '', modelType)).withDisabled();
|
|
102
|
-
}
|
|
103
|
-
return descriptor;
|
|
104
|
-
}
|
|
105
|
-
export function auditBuildTableviewEntityRevision(translate, descriptor, revModel, entityModel) {
|
|
106
|
-
const revType = descriptor.addColumnEnum('revType', revisionTypeEnum).withTitle('MngEntityRevisionChangeState.properties.revType');
|
|
107
|
-
descriptor.addFieldLookupEnum('revType', revisionTypeEnum).withLabel('MngEntityRevisionChangeState.properties.revType');
|
|
108
|
-
descriptor.table.addFilterFromColumnDescriptorUnsafe(revType);
|
|
109
|
-
if (revModel.properties) {
|
|
110
|
-
auditAddColumnsFromModel(translate, descriptor.table, revModel.entityName ?? '', revModel.properties, 'revEntity');
|
|
111
|
-
auditAddFieldsFromModel(translate, descriptor.detailsEditor, revModel.entityName ?? '', revModel.properties, 'revEntity');
|
|
112
|
-
}
|
|
113
|
-
if (entityModel.properties) {
|
|
114
|
-
auditAddColumnsFromModel(translate, descriptor.table, entityModel.entityName ?? '', entityModel.properties, 'entityState');
|
|
115
|
-
auditAddFieldsFromModel(translate, descriptor.detailsEditor, entityModel.entityName ?? '', entityModel.properties, 'entityState');
|
|
116
|
-
}
|
|
117
|
-
return descriptor;
|
|
118
|
-
}
|
|
119
|
-
export function getEnumModel(property) {
|
|
120
|
-
if (Array.isArray(property.possibleEnumValues)) {
|
|
121
|
-
const enumType = property.possibleEnumValues?.reduce((acc, v) => {
|
|
122
|
-
const constName = v
|
|
123
|
-
.split('_')
|
|
124
|
-
.map(s => (s.length > 1 ? s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase() : s))
|
|
125
|
-
.join('');
|
|
126
|
-
if (constName !== v) {
|
|
127
|
-
acc[constName] = v;
|
|
128
|
-
}
|
|
129
|
-
acc[v] = constName;
|
|
130
|
-
return acc;
|
|
131
|
-
}, {});
|
|
132
|
-
return enumModelGeneric(enumType, property.enumClassSimpleName);
|
|
133
|
-
}
|
|
134
|
-
return null;
|
|
135
|
-
}
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvaGVscGVycy9kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBTTlELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRzNELE1BQU0sVUFBVSx3QkFBd0IsQ0FDcEMsU0FBMkIsRUFDM0IsVUFBa0MsRUFDbEMsVUFBa0IsRUFDbEIsVUFBaUMsRUFDakMsWUFBcUQsU0FBUyxFQUM5RCxVQUFVLEdBQUcsSUFBSSxFQUNqQixRQUFRLEdBQUcsSUFBSTtJQUVmLEtBQUssTUFBTSxRQUFRLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQ2pDLFNBQVM7UUFDYixDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLFlBQVksS0FBSyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDakUsOERBQThEO1FBQzlELElBQUksTUFBTSxHQUFvQyxJQUFJLENBQUM7UUFDbkQsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDL0IsU0FBUztZQUNiLENBQUM7WUFFRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekMsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDWixNQUFNLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENB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UCxNQUFNLFNBQVMsR0FBRyxDQUFDO2lCQUNkLEtBQUssQ0FBQyxHQUFHLENBQUM7aUJBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzdGLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNkLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNsQixHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7WUFDRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDO1lBQ25CLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxFQUNTLEVBQUUsQ0FDZixDQUFDO1FBQ0YsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5pbXBvcnQge0VudW1UeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtsb29rdXBEYXRhUHJvdmlkZXJ9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvZm9ybS9hcGknO1xuaW1wb3J0IHtlbnVtTW9kZWxHZW5lcmljfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7Q29sdW1uRGVzY3JpcHRvciwgVGFibGVEZXNjcmlwdG9ySW5zdH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZS9hcGknO1xuaW1wb3J0IHtBRmllbGREZXNjcmlwdG9yLCBFZGl0b3JEZXNjcmlwdG9ySW5zdCwgVGFibGV2aWV3RGVzY3JpcHRvclR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbmltcG9ydCB7R3VpRW50aXR5TW9kZWxEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvZ3VpRW50aXR5TW9kZWwnO1xuaW1wb3J0IHtHdWlQcm9wZXJ0eU1vZGVsRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL2d1aVByb3BlcnR5TW9kZWwnO1xuaW1wb3J0IHtHdWlQcm9wZXJ0eVR5cGVEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvZ3VpUHJvcGVydHlUeXBlJztcbmltcG9ydCB7cmV2aXNpb25UeXBlRW51bX0gZnJvbSAnLi4vYXBpL21vZGVscy9yZXZpc2lvblR5cGUnO1xuaW1wb3J0IHtnZXRJMThuQXVkaXRFbnRpdHlQcm9wZXJ0eX0gZnJvbSAnLi4vaGVscGVycy9pMThuJztcbmltcG9ydCB7UmV2RW50aXR5V2l0aElkfSBmcm9tICcuLi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsJztcblxuZXhwb3J0IGZ1bmN0aW9uIGF1ZGl0QWRkQ29sdW1uc0Zyb21Nb2RlbDxUPihcbiAgICB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUPixcbiAgICBlbnRpdHlOYW1lOiBzdHJpbmcsXG4gICAgcHJvcGVydGllczogR3VpUHJvcGVydHlNb2RlbER0b1tdLFxuICAgIG1vZGVsVHlwZTogJ3JldkVudGl0eScgfCAnZW50aXR5U3RhdGUnIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkLFxuICAgIGFkZEZpbHRlcnMgPSB0cnVlLFxuICAgIGFkZFNvcnRzID0gdHJ1ZVxuKTogVGFibGVEZXNjcmlwdG9ySW5zdDxUPiB7XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgIGlmICghcHJvcGVydHkucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXNFbnVtID0gcHJvcGVydHkucHJvcGVydHlUeXBlID09PSBHdWlQcm9wZXJ0eVR5cGVEdG8uRW51bTtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgbGV0IGNvbHVtbjogQ29sdW1uRGVzY3JpcHRvcjxhbnksIFQ+IHwgbnVsbCA9IG51bGw7XG4gICAgICAgIGlmIChpc0VudW0pIHtcbiAgICAgICAgICAgIGlmICghcHJvcGVydHkucG9zc2libGVFbnVtVmFsdWVzKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGVudW1Nb2RlbCA9IGdldEVudW1Nb2RlbChwcm9wZXJ0eSk7XG4gICAgICAgICAgICBpZiAoZW51bU1vZGVsKSB7XG4gICAgICAgICAgICAgICAgY29sdW1uID0gZGVzY3JpcHRvci5hZGRDb2x1bW5FbnVtKHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lIGFzIGtleW9mIFQsIGVudW1Nb2RlbCk7XG4gICAgICAgICAgICAgICAgaWYgKGFkZEZpbHRlcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRvci5hZGRGaWx0ZXJMb29rdXBFbnVtKGNvbHVtbi5wcm9wZXJ0eSBhcyBrZXlvZiBULCBlbnVtTW9kZWwsIHByb3BlcnR5LnBvc3NpYmxlRW51bVZhbHVlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb2x1bW4gPSBkZXNjcmlwdG9yLmFkZENvbHVtblVuc2FmZShwcm9wZXJ0eS5yZXNvbHZlZFByb3BlcnR5TmFtZSk7XG4gICAgICAgICAgICAgICAgaWYgKGFkZEZpbHRlcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRvci5hZGRGaWx0ZXJMb29rdXBVbnNhZmUoXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucHJvcGVydHksXG4gICAgICAgICAgICAgICAgICAgICAgICBsb29rdXBEYXRhUHJvdmlkZXI8c3RyaW5nPigpLndpdGhMb29rdXAoKCkgPT4gcHJvcGVydHkucG9zc2libGVFbnVtVmFsdWVzID8/IFtdKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChwcm9wZXJ0eS5wcm9wZXJ0eVR5cGUgPT09IEd1aVByb3BlcnR5VHlwZUR0by5OdW1iZXIpIHtcbiAgICAgICAgICAgIGNvbHVtbiA9IGRlc2NyaXB0b3IuYWRkQ29sdW1uVW5zYWZlKHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKS5hc051bWJlcigpO1xuICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gR3VpUHJvcGVydHlUeXBlRHRvLkJvb2xlYW4pIHtcbiAgICAgICAgICAgIGNvbHVtbiA9IGRlc2NyaXB0b3IuYWRkQ29sdW1uVW5zYWZlKHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKS5hc0Jvb2xlYW4oKTtcbiAgICAgICAgfSBlbHNlIGlmIChwcm9wZXJ0eS5wcm9wZXJ0eVR5cGUgPT09IEd1aVByb3BlcnR5VHlwZUR0by5Mb2NhbERhdGUpIHtcbiAgICAgICAgICAgIGNvbHVtbiA9IGRlc2NyaXB0b3IuYWRkQ29sdW1uVW5zYWZlKHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKS5hc0RhdGUoJ2RkLiBNTSB5eXl5Jyk7XG4gICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHkucHJvcGVydHlUeXBlID09PSBHdWlQcm9wZXJ0eVR5cGVEdG8uT2Zmc2V0RGF0ZVRpbWUpIHtcbiAgICAgICAgICAgIGNvbHVtbiA9IGRlc2NyaXB0b3IuYWRkQ29sdW1uVW5zYWZlKHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKS5hc0RhdGUoJ2RkLiBNTSB5eXl5IEhIOm1tJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBzdHJpbmcgLyB3aWxkY2FyZFxuICAgICAgICAgICAgY29sdW1uID0gZGVzY3JpcHRvci5hZGRDb2x1bW5VbnNhZmUocHJvcGVydHkucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpLndpdGhUaXRsZShnZXRJMThuQXVkaXRFbnRpdHlQcm9wZXJ0eSh0cmFuc2xhdGUsIGVudGl0eU5hbWUsIHByb3BlcnR5LnByb3BlcnR5TmFtZSA/PyAnJywgbW9kZWxUeXBlKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobW9kZWxUeXBlKSB7XG4gICAgICAgICAgICBjb2x1bW4ud2l0aEdldHRlcigodmFsdWUsIGl0ZW0pID0+IGl0ZW0/Llttb2RlbFR5cGUgYXMga2V5b2Ygb2JqZWN0XT8uW3Byb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lIGFzIGtleW9mIG9iamVjdF0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29sdW1uLndpdGhUaXRsZShnZXRJMThuQXVkaXRFbnRpdHlQcm9wZXJ0eSh0cmFuc2xhdGUsIGVudGl0eU5hbWUsIHByb3BlcnR5LnByb3BlcnR5TmFtZSA/PyAnJywgbW9kZWxUeXBlKSk7XG5cbiAgICAgICAgaWYgKCFpc0VudW0gJiYgYWRkRmlsdGVycykge1xuICAgICAgICAgICAgZGVzY3JpcHRvci5hZGRGaWx0ZXJGcm9tQ29sdW1uRGVzY3JpcHRvclVuc2FmZShjb2x1bW4pLndpdGhUaXRsZShjb2x1bW4udGl0bGUgPz8gJycpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhZGRTb3J0cykge1xuICAgICAgICAgICAgZGVzY3JpcHRvci53aXRoU29ydFVuc2FmZShjb2x1bW4ucHJvcGVydHkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkZXNjcmlwdG9yO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXVkaXRBZGRGaWVsZHNGcm9tTW9kZWw8VD4oXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PFQ+LFxuICAgIGVudGl0eU5hbWU6IHN0cmluZyxcbiAgICBwcm9wZXJ0aWVzOiBHdWlQcm9wZXJ0eU1vZGVsRHRvW10sXG4gICAgbW9kZWxUeXBlOiAncmV2RW50aXR5JyB8ICdlbnRpdHlTdGF0ZScgPSAncmV2RW50aXR5J1xuKTogRWRpdG9yRGVzY3JpcHRvckluc3Q8VD4ge1xuICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgcHJvcGVydGllcykge1xuICAgICAgICBpZiAoIXByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpZWxkUHJlcGVuZCA9IGAke21vZGVsVHlwZX0uYDtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgbGV0IGZpZWxkOiBBRmllbGREZXNjcmlwdG9yPGFueSwgYW55PjtcblxuICAgICAgICBpZiAocHJvcGVydHkucHJvcGVydHlUeXBlID09PSBHdWlQcm9wZXJ0eVR5cGVEdG8uRW51bSkge1xuICAgICAgICAgICAgY29uc3QgZW51bU1vZGVsID0gZ2V0RW51bU1vZGVsKHByb3BlcnR5KTtcbiAgICAgICAgICAgIGlmIChlbnVtTW9kZWwpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXByb3BlcnR5LnBvc3NpYmxlRW51bVZhbHVlcykge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBmaWVsZCA9IGRlc2NyaXB0b3IuYWRkRmllbGRMb29rdXBFbnVtKChmaWVsZFByZXBlbmQgKyBwcm9wZXJ0eS5yZXNvbHZlZFByb3BlcnR5TmFtZSkgYXMga2V5b2YgVCwgZW51bU1vZGVsLCBwcm9wZXJ0eS5wb3NzaWJsZUVudW1WYWx1ZXMpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBmaWVsZCA9IGRlc2NyaXB0b3IuYWRkRmllbGRVbnNhZmUoZmllbGRQcmVwZW5kICsgcHJvcGVydHkucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gR3VpUHJvcGVydHlUeXBlRHRvLk51bWJlcikge1xuICAgICAgICAgICAgZmllbGQgPSBkZXNjcmlwdG9yLmFkZEZpZWxkVW5zYWZlKGZpZWxkUHJlcGVuZCArIHByb3BlcnR5LnJlc29sdmVkUHJvcGVydHlOYW1lKS5hc051bWJlcigpO1xuICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gR3VpUHJvcGVydHlUeXBlRHRvLkJvb2xlYW4pIHtcbiAgICAgICAgICAgIGZpZWxkID0gZGVzY3JpcHRvci5hZGRGaWVsZFVuc2FmZShmaWVsZFByZXBlbmQgKyBwcm9wZXJ0eS5yZXNvbHZlZFByb3BlcnR5TmFtZSk7XG4gICAgICAgIH0gZWxzZSBpZiAocHJvcGVydHkucHJvcGVydHlUeXBlID09PSBHdWlQcm9wZXJ0eVR5cGVEdG8uTG9jYWxEYXRlKSB7XG4gICAgICAgICAgICBmaWVsZCA9IGRlc2NyaXB0b3IuYWRkRmllbGRVbnNhZmUoZmllbGRQcmVwZW5kICsgcHJvcGVydHkucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpLmFzRGF0ZVBpY2tlcih7Zm9ybWF0OiAnZGQuIE1NTSB5eXl5J30pO1xuICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gR3VpUHJvcGVydHlUeXBlRHRvLk9mZnNldERhdGVUaW1lKSB7XG4gICAgICAgICAgICBmaWVsZCA9IGRlc2NyaXB0b3IuYWRkRmllbGRVbnNhZmUoZmllbGRQcmVwZW5kICsgcHJvcGVydHkucmVzb2x2ZWRQcm9wZXJ0eU5hbWUpLmFzRGF0ZVBpY2tlcih7XG4gICAgICAgICAgICAgICAgZm9ybWF0OiAnZGQuIE1NIHl5JyxcbiAgICAgICAgICAgICAgICBzaG93VGltZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBzaG93U2Vjb25kczogZmFsc2VcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gc3RyaW5nIC8gd2lsZGNhcmRcbiAgICAgICAgICAgIGZpZWxkID0gZGVzY3JpcHRvci5hZGRGaWVsZFVuc2FmZShmaWVsZFByZXBlbmQgKyBwcm9wZXJ0eS5yZXNvbHZlZFByb3BlcnR5TmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZC53aXRoTGFiZWwoZ2V0STE4bkF1ZGl0RW50aXR5UHJvcGVydHkodHJhbnNsYXRlLCBlbnRpdHlOYW1lLCBwcm9wZXJ0eS5wcm9wZXJ0eU5hbWUgPz8gJycsIG1vZGVsVHlwZSkpLndpdGhEaXNhYmxlZCgpO1xuICAgIH1cbiAgICByZXR1cm4gZGVzY3JpcHRvcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGF1ZGl0QnVpbGRUYWJsZXZpZXdFbnRpdHlSZXZpc2lvbihcbiAgICB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgZGVzY3JpcHRvcjogVGFibGV2aWV3RGVzY3JpcHRvclR5cGU8UmV2RW50aXR5V2l0aElkPixcbiAgICByZXZNb2RlbDogR3VpRW50aXR5TW9kZWxEdG8sXG4gICAgZW50aXR5TW9kZWw6IEd1aUVudGl0eU1vZGVsRHRvXG4pOiBUYWJsZXZpZXdEZXNjcmlwdG9yVHlwZTxSZXZFbnRpdHlXaXRoSWQ+IHtcbiAgICBjb25zdCByZXZUeXBlID0gZGVzY3JpcHRvci5hZGRDb2x1bW5FbnVtKCdyZXZUeXBlJywgcmV2aXNpb25UeXBlRW51bSkud2l0aFRpdGxlKCdNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlLnByb3BlcnRpZXMucmV2VHlwZScpO1xuICAgIGRlc2NyaXB0b3IuYWRkRmllbGRMb29rdXBFbnVtKCdyZXZUeXBlJywgcmV2aXNpb25UeXBlRW51bSkud2l0aExhYmVsKCdNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlLnByb3BlcnRpZXMucmV2VHlwZScpO1xuXG4gICAgZGVzY3JpcHRvci50YWJsZS5hZGRGaWx0ZXJGcm9tQ29sdW1uRGVzY3JpcHRvclVuc2FmZShyZXZUeXBlKTtcblxuICAgIGlmIChyZXZNb2RlbC5wcm9wZXJ0aWVzKSB7XG4gICAgICAgIGF1ZGl0QWRkQ29sdW1uc0Zyb21Nb2RlbCh0cmFuc2xhdGUsIGRlc2NyaXB0b3IudGFibGUsIHJldk1vZGVsLmVudGl0eU5hbWUgPz8gJycsIHJldk1vZGVsLnByb3BlcnRpZXMsICdyZXZFbnRpdHknKTtcbiAgICAgICAgYXVkaXRBZGRGaWVsZHNGcm9tTW9kZWwodHJhbnNsYXRlLCBkZXNjcmlwdG9yLmRldGFpbHNFZGl0b3IsIHJldk1vZGVsLmVudGl0eU5hbWUgPz8gJycsIHJldk1vZGVsLnByb3BlcnRpZXMsICdyZXZFbnRpdHknKTtcbiAgICB9XG4gICAgaWYgKGVudGl0eU1vZGVsLnByb3BlcnRpZXMpIHtcbiAgICAgICAgYXVkaXRBZGRDb2x1bW5zRnJvbU1vZGVsKHRyYW5zbGF0ZSwgZGVzY3JpcHRvci50YWJsZSwgZW50aXR5TW9kZWwuZW50aXR5TmFtZSA/PyAnJywgZW50aXR5TW9kZWwucHJvcGVydGllcywgJ2VudGl0eVN0YXRlJyk7XG4gICAgICAgIGF1ZGl0QWRkRmllbGRzRnJvbU1vZGVsKHRyYW5zbGF0ZSwgZGVzY3JpcHRvci5kZXRhaWxzRWRpdG9yLCBlbnRpdHlNb2RlbC5lbnRpdHlOYW1lID8/ICcnLCBlbnRpdHlNb2RlbC5wcm9wZXJ0aWVzLCAnZW50aXR5U3RhdGUnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGVzY3JpcHRvcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVudW1Nb2RlbChwcm9wZXJ0eTogR3VpUHJvcGVydHlNb2RlbER0bykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHByb3BlcnR5LnBvc3NpYmxlRW51bVZhbHVlcykpIHtcbiAgICAgICAgY29uc3QgZW51bVR5cGUgPSBwcm9wZXJ0eS5wb3NzaWJsZUVudW1WYWx1ZXM/LnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHYpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb25zdE5hbWUgPSB2XG4gICAgICAgICAgICAgICAgICAgIC5zcGxpdCgnXycpXG4gICAgICAgICAgICAgICAgICAgIC5tYXAocyA9PiAocy5sZW5ndGggPiAxID8gcy5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKSArIHMuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCkgOiBzKSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJycpO1xuICAgICAgICAgICAgICAgIGlmIChjb25zdE5hbWUgIT09IHYpIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjW2NvbnN0TmFtZV0gPSB2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhY2Nbdl0gPSBjb25zdE5hbWU7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA8RW51bVR5cGU+e31cbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGVudW1Nb2RlbEdlbmVyaWMoZW51bVR5cGUsIHByb3BlcnR5LmVudW1DbGFzc1NpbXBsZU5hbWUpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cbiJdfQ==
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { RevisionTypeDto } from '../api/models/revisionType';
|
|
2
|
-
export function auditMapToEntityChangesArray(fieldValue) {
|
|
3
|
-
const entityChanges = [];
|
|
4
|
-
for (const key of Object.keys(fieldValue)) {
|
|
5
|
-
const ec = { entityType: key, items: [] };
|
|
6
|
-
for (const change of fieldValue[key]) {
|
|
7
|
-
if (change.revType === RevisionTypeDto.Add && change.entityNewState) {
|
|
8
|
-
const item = {
|
|
9
|
-
revType: change.revType,
|
|
10
|
-
revTypeColor: 'green'
|
|
11
|
-
};
|
|
12
|
-
Object.entries(change.entityNewState).forEach(([key, value]) => (item[key] = value));
|
|
13
|
-
ec.items?.push(item);
|
|
14
|
-
}
|
|
15
|
-
else if (change.revType === RevisionTypeDto.Del && change.entityOldState) {
|
|
16
|
-
const item = {
|
|
17
|
-
revType: change.revType,
|
|
18
|
-
revTypeColor: 'red'
|
|
19
|
-
};
|
|
20
|
-
Object.entries(change.entityOldState).forEach(([key, value]) => (item[key] = value));
|
|
21
|
-
ec.items?.push(item);
|
|
22
|
-
}
|
|
23
|
-
else if (change.revType === RevisionTypeDto.Mod && change.entityOldState && change.entityNewState) {
|
|
24
|
-
const itemOld = {
|
|
25
|
-
revType: change.revType,
|
|
26
|
-
revTypeColor: 'red'
|
|
27
|
-
};
|
|
28
|
-
Object.entries(change.entityOldState).forEach(([key, value]) => (itemOld[key] = value));
|
|
29
|
-
const itemNew = {
|
|
30
|
-
revType: change.revType,
|
|
31
|
-
revTypeColor: 'green'
|
|
32
|
-
};
|
|
33
|
-
Object.entries(change.entityNewState).forEach(([key, value]) => (itemNew[key] = value));
|
|
34
|
-
ec.items?.push(itemOld);
|
|
35
|
-
ec.items?.push(itemNew);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
entityChanges.push(ec);
|
|
39
|
-
}
|
|
40
|
-
return entityChanges;
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWNoYW5nZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2hlbHBlcnMvZW50aXR5LWNoYW5nZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBSTNELE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxVQUFtRDtJQUM1RixNQUFNLGFBQWEsR0FBNEIsRUFBRSxDQUFDO0lBQ2xELEtBQUssTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxHQUEwQixFQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO1FBQy9ELEtBQUssTUFBTSxNQUFNLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkMsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLGVBQWUsQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNsRSxNQUFNLElBQUksR0FBOEI7b0JBQ3BDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztvQkFDdkIsWUFBWSxFQUFFLE9BQU87aUJBQ3hCLENBQUM7Z0JBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3JGLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLGVBQWUsQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN6RSxNQUFNLElBQUksR0FBOEI7b0JBQ3BDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztvQkFDdkIsWUFBWSxFQUFFLEtBQUs7aUJBQ3RCLENBQUM7Z0JBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3JGLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLGVBQWUsQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLGNBQWMsSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ2xHLE1BQU0sT0FBTyxHQUE4QjtvQkFDdkMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO29CQUN2QixZQUFZLEVBQUUsS0FBSztpQkFDdEIsQ0FBQztnQkFDRixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFFeEYsTUFBTSxPQUFPLEdBQThCO29CQUN2QyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87b0JBQ3ZCLFlBQVksRUFBRSxPQUFPO2lCQUN4QixDQUFDO2dCQUNGLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUV4RixFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDeEIsRUFBRSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7UUFDRCxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFDRCxPQUFPLGFBQWEsQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbnRpdHlDaGFuZ2VEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvZW50aXR5Q2hhbmdlJztcbmltcG9ydCB7UmV2aXNpb25UeXBlRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL3JldmlzaW9uVHlwZSc7XG5pbXBvcnQge0VudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGV9IGZyb20gJy4uL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlLXN0YXRlLm1vZGVsJztcbmltcG9ydCB7RW50aXR5UmV2aXNpb25DaGFuZ2VzfSBmcm9tICcuLi9tb2RlbHMvZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXVkaXRNYXBUb0VudGl0eUNoYW5nZXNBcnJheShmaWVsZFZhbHVlOiB7W2tleTogc3RyaW5nXTogQXJyYXk8RW50aXR5Q2hhbmdlRHRvPn0pOiBBcnJheTxFbnRpdHlSZXZpc2lvbkNoYW5nZXM+IHtcbiAgICBjb25zdCBlbnRpdHlDaGFuZ2VzOiBFbnRpdHlSZXZpc2lvbkNoYW5nZXNbXSA9IFtdO1xuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGZpZWxkVmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IGVjOiBFbnRpdHlSZXZpc2lvbkNoYW5nZXMgPSB7ZW50aXR5VHlwZToga2V5LCBpdGVtczogW119O1xuICAgICAgICBmb3IgKGNvbnN0IGNoYW5nZSBvZiBmaWVsZFZhbHVlW2tleV0pIHtcbiAgICAgICAgICAgIGlmIChjaGFuZ2UucmV2VHlwZSA9PT0gUmV2aXNpb25UeXBlRHRvLkFkZCAmJiBjaGFuZ2UuZW50aXR5TmV3U3RhdGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtOiBFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlID0ge1xuICAgICAgICAgICAgICAgICAgICByZXZUeXBlOiBjaGFuZ2UucmV2VHlwZSxcbiAgICAgICAgICAgICAgICAgICAgcmV2VHlwZUNvbG9yOiAnZ3JlZW4nXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyhjaGFuZ2UuZW50aXR5TmV3U3RhdGUpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4gKGl0ZW1ba2V5XSA9IHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgZWMuaXRlbXM/LnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoYW5nZS5yZXZUeXBlID09PSBSZXZpc2lvblR5cGVEdG8uRGVsICYmIGNoYW5nZS5lbnRpdHlPbGRTdGF0ZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW06IEVudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgIHJldlR5cGU6IGNoYW5nZS5yZXZUeXBlLFxuICAgICAgICAgICAgICAgICAgICByZXZUeXBlQ29sb3I6ICdyZWQnXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBPYmplY3QuZW50cmllcyhjaGFuZ2UuZW50aXR5T2xkU3RhdGUpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4gKGl0ZW1ba2V5XSA9IHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgZWMuaXRlbXM/LnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoYW5nZS5yZXZUeXBlID09PSBSZXZpc2lvblR5cGVEdG8uTW9kICYmIGNoYW5nZS5lbnRpdHlPbGRTdGF0ZSAmJiBjaGFuZ2UuZW50aXR5TmV3U3RhdGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtT2xkOiBFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlID0ge1xuICAgICAgICAgICAgICAgICAgICByZXZUeXBlOiBjaGFuZ2UucmV2VHlwZSxcbiAgICAgICAgICAgICAgICAgICAgcmV2VHlwZUNvbG9yOiAncmVkJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoY2hhbmdlLmVudGl0eU9sZFN0YXRlKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IChpdGVtT2xkW2tleV0gPSB2YWx1ZSkpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbU5ldzogRW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgcmV2VHlwZTogY2hhbmdlLnJldlR5cGUsXG4gICAgICAgICAgICAgICAgICAgIHJldlR5cGVDb2xvcjogJ2dyZWVuJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoY2hhbmdlLmVudGl0eU5ld1N0YXRlKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IChpdGVtTmV3W2tleV0gPSB2YWx1ZSkpO1xuXG4gICAgICAgICAgICAgICAgZWMuaXRlbXM/LnB1c2goaXRlbU9sZCk7XG4gICAgICAgICAgICAgICAgZWMuaXRlbXM/LnB1c2goaXRlbU5ldyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZW50aXR5Q2hhbmdlcy5wdXNoKGVjKTtcbiAgICB9XG4gICAgcmV0dXJuIGVudGl0eUNoYW5nZXM7XG59XG4iXX0=
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { getI18n, getI18nTypePropertyKey } from '@mediusinc/mng-commons/core';
|
|
2
|
-
const i18nBaseEntityKey = 'AuditEntities';
|
|
3
|
-
export function getI18nAuditEntityName(translate, entityName) {
|
|
4
|
-
return getI18n(translate, {}, `${i18nBaseEntityKey}.${entityName}.name`, `${i18nBaseEntityKey}.${entityName}`, `${entityName}.name`) ?? entityName;
|
|
5
|
-
}
|
|
6
|
-
export function getI18nAuditEntityProperty(translate, entityName, propertyName, modelType = 'entityState') {
|
|
7
|
-
if (modelType === 'revEntity') {
|
|
8
|
-
return 'MngRevEntity.properties.' + propertyName;
|
|
9
|
-
}
|
|
10
|
-
else {
|
|
11
|
-
return getI18n(translate, {}, getI18nTypePropertyKey(`${i18nBaseEntityKey}.${entityName}`, propertyName), getI18nTypePropertyKey(entityName, propertyName)) ?? propertyName;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvaGVscGVycy9pMThuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUU1RSxNQUFNLGlCQUFpQixHQUFHLGVBQWUsQ0FBQztBQUUxQyxNQUFNLFVBQVUsc0JBQXNCLENBQUMsU0FBMkIsRUFBRSxVQUFrQjtJQUNsRixPQUFPLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLEdBQUcsaUJBQWlCLElBQUksVUFBVSxPQUFPLEVBQUUsR0FBRyxpQkFBaUIsSUFBSSxVQUFVLEVBQUUsRUFBRSxHQUFHLFVBQVUsT0FBTyxDQUFDLElBQUksVUFBVSxDQUFDO0FBQ3ZKLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQ3RDLFNBQTJCLEVBQzNCLFVBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLFlBQXFELGFBQWE7SUFFbEUsSUFBSSxTQUFTLEtBQUssV0FBVyxFQUFFLENBQUM7UUFDNUIsT0FBTywwQkFBMEIsR0FBRyxZQUFZLENBQUM7SUFDckQsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLHNCQUFzQixDQUFDLEdBQUcsaUJBQWlCLElBQUksVUFBVSxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQUUsc0JBQXNCLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDO0lBQ2hMLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuaW1wb3J0IHtnZXRJMThuLCBnZXRJMThuVHlwZVByb3BlcnR5S2V5fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5jb25zdCBpMThuQmFzZUVudGl0eUtleSA9ICdBdWRpdEVudGl0aWVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEkxOG5BdWRpdEVudGl0eU5hbWUodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBlbnRpdHlOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRJMThuKHRyYW5zbGF0ZSwge30sIGAke2kxOG5CYXNlRW50aXR5S2V5fS4ke2VudGl0eU5hbWV9Lm5hbWVgLCBgJHtpMThuQmFzZUVudGl0eUtleX0uJHtlbnRpdHlOYW1lfWAsIGAke2VudGl0eU5hbWV9Lm5hbWVgKSA/PyBlbnRpdHlOYW1lO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bkF1ZGl0RW50aXR5UHJvcGVydHkoXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIGVudGl0eU5hbWU6IHN0cmluZyxcbiAgICBwcm9wZXJ0eU5hbWU6IHN0cmluZyxcbiAgICBtb2RlbFR5cGU6ICdyZXZFbnRpdHknIHwgJ2VudGl0eVN0YXRlJyB8IHVuZGVmaW5lZCA9ICdlbnRpdHlTdGF0ZSdcbik6IHN0cmluZyB7XG4gICAgaWYgKG1vZGVsVHlwZSA9PT0gJ3JldkVudGl0eScpIHtcbiAgICAgICAgcmV0dXJuICdNbmdSZXZFbnRpdHkucHJvcGVydGllcy4nICsgcHJvcGVydHlOYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBnZXRJMThuKHRyYW5zbGF0ZSwge30sIGdldEkxOG5UeXBlUHJvcGVydHlLZXkoYCR7aTE4bkJhc2VFbnRpdHlLZXl9LiR7ZW50aXR5TmFtZX1gLCBwcm9wZXJ0eU5hbWUpLCBnZXRJMThuVHlwZVByb3BlcnR5S2V5KGVudGl0eU5hbWUsIHByb3BlcnR5TmFtZSkpID8/IHByb3BlcnR5TmFtZTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvY29uZmlnLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vbnNBdWRpdE1vZHVsZUNvbmZpZyB7XG4gICAgYXBpQmFzZVBhdGhDb25maWdLZXk6IHN0cmluZztcbiAgICBhcGlTZXJ2aWNlQmFzZVBhdGg/OiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICByb290UGFnZUNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHJldmlzaW9uc1BhZ2VDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBlbnRpdHlSZXZpc2lvbnNQYWdlQ29tcG9uZW50PzogVHlwZTxhbnk+O1xufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UmV2aXNpb25UeXBlRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL3JldmlzaW9uVHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZSB7XG4gICAgcmV2VHlwZT86IFJldmlzaW9uVHlwZUR0bztcbiAgICByZXZUeXBlQ29sb3I/OiAnZ3JlZW4nIHwgJ3JlZCc7XG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlfSBmcm9tICcuL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVudGl0eVJldmlzaW9uQ2hhbmdlcyB7XG4gICAgZW50aXR5VHlwZT86IHN0cmluZztcbiAgICBpdGVtcz86IEVudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGVbXTtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2d1aUVudGl0eU1vZGVsV2l0aEkxOG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R3VpRW50aXR5TW9kZWxEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvZ3VpRW50aXR5TW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEd1aUVudGl0eU1vZGVsV2l0aEkxOG4gZXh0ZW5kcyBHdWlFbnRpdHlNb2RlbER0byB7XG4gICAgZW50aXR5TmFtZUkxOG4/OiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS1kZXRhaWxlZC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHktZGV0YWlsZWQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RW50aXR5Q2hhbmdlRHRvfSBmcm9tICcuLi9hcGkvbW9kZWxzL2VudGl0eUNoYW5nZSc7XG5pbXBvcnQge1JldkVudGl0eX0gZnJvbSAnLi9yZXYtZW50aXR5Lm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBSZXZFbnRpdHlEZXRhaWxlZCBleHRlbmRzIFJldkVudGl0eSB7XG4gICAgcmV2RW50aXR5Pzoge1trZXk6IHN0cmluZ106IHVua25vd259O1xuICAgIGVudGl0eU5hbWVDaGFuZ2VzTWFwPzoge1trZXk6IHN0cmluZ106IEFycmF5PEVudGl0eUNoYW5nZUR0bz59O1xufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SWRUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJldkVudGl0eSB7XG4gICAgcmV2PzogSWRUeXBlOyAvLyB1c3VhbGx5IGEgbnVtYmVyXG4gICAgcmV2VXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgdGltZXN0YW1wPzogRGF0ZTtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2RW50aXR5V2l0aElkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1JldkVudGl0eVdpdGhTdGF0ZUR0b30gZnJvbSAnLi4vYXBpL21vZGVscy9yZXZFbnRpdHlXaXRoU3RhdGVEdG8nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJldkVudGl0eVdpdGhJZCBleHRlbmRzIFJldkVudGl0eVdpdGhTdGF0ZUR0byB7XG4gICAgbWVyZ2VkSWQ/OiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const COMMONS_AUDIT_MODULE_CONFIG_IT = new InjectionToken('CommonsAuditModuleConfig');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLWNvbmZpZy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZS9tb2R1bGUtY29uZmlnLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFJN0MsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsSUFBSSxjQUFjLENBQTJCLDBCQUEwQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtDb21tb25zQXVkaXRNb2R1bGVDb25maWd9IGZyb20gJy4uL21vZGVscy9jb25maWcubW9kZWwnO1xuXG5leHBvcnQgY29uc3QgQ09NTU9OU19BVURJVF9NT0RVTEVfQ09ORklHX0lUID0gbmV3IEluamVjdGlvblRva2VuPENvbW1vbnNBdWRpdE1vZHVsZUNvbmZpZz4oJ0NvbW1vbnNBdWRpdE1vZHVsZUNvbmZpZycpO1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaXVzaW5jLW1uZy1jb21tb25zLWF1ZGl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lZGl1c2luYy1tbmctY29tbW9ucy1hdWRpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|