@mediusinc/mng-commons-audit 3.6.0 → 3.7.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/esm2022/lib/api/models/entityChange.mjs +5 -4
  2. package/esm2022/lib/api/models/guiEntityModel.mjs +5 -4
  3. package/esm2022/lib/api/models/guiPropertyModel.mjs +5 -4
  4. package/esm2022/lib/api/models/guiPropertyType.mjs +3 -3
  5. package/esm2022/lib/api/models/guiRelationModel.mjs +5 -4
  6. package/esm2022/lib/api/models/revEntityWithChangesDto.mjs +5 -4
  7. package/esm2022/lib/api/models/revEntityWithStateDto.mjs +5 -4
  8. package/esm2022/lib/api/models/revisionType.mjs +3 -3
  9. package/esm2022/lib/api/services/audit-revisions-api.service.mjs +4 -4
  10. package/esm2022/lib/api/services/audit.service.mjs +4 -4
  11. package/esm2022/lib/components/entity-changes-field/entity-changes-field.component.mjs +8 -8
  12. package/esm2022/lib/components/pages/audit/audit.page.component.mjs +3 -3
  13. package/esm2022/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.mjs +15 -16
  14. package/esm2022/lib/components/pages/revisions/audit-revisions.page.component.mjs +33 -23
  15. package/esm2022/lib/models/config.model.mjs +1 -1
  16. package/esm2022/lib/models/entity-revision-change-state.model.mjs +3 -2
  17. package/esm2022/lib/models/entity-revision-changes.model.mjs +3 -2
  18. package/esm2022/lib/models/guiEntityModelWithI18n.model.mjs +3 -2
  19. package/esm2022/lib/models/rev-entity-detailed.model.mjs +3 -2
  20. package/esm2022/lib/models/rev-entity.model.mjs +3 -2
  21. package/esm2022/lib/models/revEntityWithId.model.mjs +5 -4
  22. package/esm2022/lib/utils/audit.util.mjs +28 -21
  23. package/fesm2022/mediusinc-mng-commons-audit.mjs +93 -77
  24. package/fesm2022/mediusinc-mng-commons-audit.mjs.map +1 -1
  25. package/lib/api/models/entityChange.d.ts +3 -3
  26. package/lib/api/models/guiEntityModel.d.ts +3 -3
  27. package/lib/api/models/guiPropertyModel.d.ts +3 -3
  28. package/lib/api/models/guiRelationModel.d.ts +3 -3
  29. package/lib/api/models/revEntityWithChangesDto.d.ts +3 -3
  30. package/lib/api/models/revEntityWithStateDto.d.ts +3 -3
  31. package/lib/components/entity-changes-field/entity-changes-field.component.d.ts +2 -2
  32. package/lib/components/pages/entity-revisions/audit-entity-revisions.page.component.d.ts +7 -7
  33. package/lib/components/pages/revisions/audit-revisions.page.component.d.ts +5 -5
  34. package/lib/utils/audit.util.d.ts +4 -4
  35. package/package.json +8 -8
@@ -1,4 +1,4 @@
1
- import { AsyncPipe, NgIf } from '@angular/common';
1
+ import { AsyncPipe } from '@angular/common';
2
2
  import { Component, DestroyRef, inject, signal } from '@angular/core';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { FormsModule } from '@angular/forms';
@@ -23,9 +23,9 @@ export class MngAuditEntityRevisionsPageComponent extends AMngTableviewRouteComp
23
23
  this.router = router;
24
24
  this.destroyRef = inject(DestroyRef);
25
25
  this.auditService = inject(MngAuditService);
26
- this.revisisonsApiService = inject(MngAuditRevisionsApiService);
26
+ this.revisionsApiService = inject(MngAuditRevisionsApiService);
27
27
  this.showTableview = signal(false);
28
- this.revisionEntitiesLookupProvider = new LookupDataProvider(MngGuiEntityModelWithI18n).withLookup(() => this.auditService.auditModel$.pipe(map(model => {
28
+ this.revisionEntitiesLookupProvider = LookupDataProvider.fromClass(MngGuiEntityModelWithI18n).withLookup(() => this.auditService.auditModel$.pipe(map(model => {
29
29
  const modelI18n = model;
30
30
  modelI18n.sort((m1, m2) => {
31
31
  if (m1.entityName && m2.entityName) {
@@ -75,12 +75,11 @@ export class MngAuditEntityRevisionsPageComponent extends AMngTableviewRouteComp
75
75
  if (!this.revModel || !this.selectedRevisionEntity?.entityName) {
76
76
  throw new MngInternalError('No revision model or revision entity is provided for tableview.');
77
77
  }
78
- const desc = new TableviewDescriptor(MngRevEntityWithId, 'mergedId', undefined, this.selectedRevisionEntity.entityName);
78
+ const desc = TableviewDescriptor.fromClass(MngRevEntityWithId, 'mergedId', undefined, this.selectedRevisionEntity.entityName);
79
79
  AuditUtil.buildDescriptorForEntityRevision(desc, this.revModel, this.selectedRevisionEntity);
80
80
  desc.table.withColumnsResizable();
81
81
  desc.table.withCurrentColumnsReorderable();
82
82
  desc.table.withCurrentColumnsToggleable();
83
- desc.table.withDataKey(`EntityRevisionsPage_${this.selectedRevisionEntity.entityName}`);
84
83
  return desc;
85
84
  }
86
85
  createTableviewDataProvider() {
@@ -88,10 +87,10 @@ export class MngAuditEntityRevisionsPageComponent extends AMngTableviewRouteComp
88
87
  throw new MngInternalError('No revision model or revision entity is provided for tableview.');
89
88
  }
90
89
  const entityName = this.selectedRevisionEntity.entityName;
91
- return new TableviewDataProvider(MngRevEntityWithId).withGetAll(qp => this.selectedRevisionEntity?.entityName
90
+ return TableviewDataProvider.fromClass(MngRevEntityWithId).withGetAll(qp => this.selectedRevisionEntity?.entityName
92
91
  ? combineLatest([
93
- this.revisisonsApiService.countRevisionsWithStateForEntityType(qp, entityName),
94
- this.revisisonsApiService.listRevisionsWithStateForEntityType(qp, entityName)
92
+ this.revisionsApiService.countRevisionsWithStateForEntityType(qp, entityName),
93
+ this.revisionsApiService.listRevisionsWithStateForEntityType(qp, entityName)
95
94
  ]).pipe(map(([count, values]) => {
96
95
  const revEntityWithStateAndIdList = [];
97
96
  for (const revEntityWithState of values) {
@@ -112,7 +111,7 @@ export class MngAuditEntityRevisionsPageComponent extends AMngTableviewRouteComp
112
111
  throw new MngInternalError('No revision model or revision entity is provided for tableview.');
113
112
  }
114
113
  const entityName = this.selectedRevisionEntity.entityName;
115
- const detailsAction = new ActionEditorDetailsDescriptor(this.descriptor.detailsEditor)
114
+ const detailsAction = ActionEditorDetailsDescriptor.create(this.descriptor.detailsEditor)
116
115
  .withFetchFunction(ctx => {
117
116
  if (!entityName) {
118
117
  return throwError(() => new MngInternalError('No revision entity is provided for details.'));
@@ -122,16 +121,16 @@ export class MngAuditEntityRevisionsPageComponent extends AMngTableviewRouteComp
122
121
  }
123
122
  const revId = ctx.parameters.itemId.toString().split('_')[0];
124
123
  const itemId = ctx.parameters.itemId.toString().split('_')[1];
125
- return this.revisisonsApiService.fetchRevisionsWithStateForEntityType(entityName, revId, itemId);
124
+ return this.revisionsApiService.fetchRevisionsWithStateForEntityType(entityName, revId, itemId);
126
125
  })
127
126
  .withEditorTitle('pages.entityRevisions.actions.details.editor.title');
128
127
  return [detailsAction];
129
128
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: MngAuditEntityRevisionsPageComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
131
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: MngAuditEntityRevisionsPageComponent, isStandalone: true, selector: "mng-audit-entity-revisions-page", usesInheritance: true, 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 [itemsLabelProperty]=\"'entityNameI18n'\"\n [(ngModel)]=\"selectedRevisionEntity\"\n (valueChange)=\"onRevisionEntityChange()\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"></mng-dropdown>\n <small *ngIf=\"!selectedRevisionEntity\" class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n </div>\n</div>\n<div *ngIf=\"showTableview()\">\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n</div>\n", dependencies: [{ kind: "component", type: MngDropdownComponent, selector: "mng-dropdown", inputs: ["dataProvider", "dataKeyProperty", "itemsLabelProperty", "itemsLabelTranslate", "itemsValueProperty", "itemsDisabledProperty", "multiselect", "placeholder", "showClear", "selectFirstItem", "className", "dropdownClassName", "changeValueOnBlur"], outputs: ["valueChange"] }, { kind: "component", type: MngTableviewRouteComponent, selector: "mng-tableview-route", inputs: ["descriptor", "dataProvider", "actions"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormlyModule }] }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MngAuditEntityRevisionsPageComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
130
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: MngAuditEntityRevisionsPageComponent, isStandalone: true, selector: "mng-audit-entity-revisions-page", usesInheritance: true, 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()\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"></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()) {\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n}\n", dependencies: [{ kind: "component", type: MngDropdownComponent, selector: "mng-dropdown", inputs: ["dataProvider", "optionsTrackProperty", "optionsLabelProperty", "optionsLabelTranslate", "optionsValueProperty", "optionsDisabledProperty", "multiselect", "placeholder", "showClear", "selectFirstItem", "className", "dropdownClassName", "changeValueOnBlur"], outputs: ["valueChange"] }, { kind: "component", type: MngTableviewRouteComponent, selector: "mng-tableview-route", inputs: ["descriptor", "dataProvider", "actions"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormlyModule }] }); }
132
131
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: MngAuditEntityRevisionsPageComponent, decorators: [{
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MngAuditEntityRevisionsPageComponent, decorators: [{
134
133
  type: Component,
135
- args: [{ standalone: true, selector: 'mng-audit-entity-revisions-page', imports: [MngDropdownComponent, MngTableviewRouteComponent, FormsModule, AsyncPipe, NgIf, TranslateModule, FormlyModule], template: "<div class=\"card\">\n <div class=\"field mb-0\">\n <mng-dropdown\n id=\"revisionEntityDropdown\"\n [placeholder]=\"'pages.entityRevisions.dropdown.placeholder' | translate\"\n [itemsLabelProperty]=\"'entityNameI18n'\"\n [(ngModel)]=\"selectedRevisionEntity\"\n (valueChange)=\"onRevisionEntityChange()\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"></mng-dropdown>\n <small *ngIf=\"!selectedRevisionEntity\" class=\"block\">\n {{ 'pages.entityRevisions.dropdown.helpText' | translate }}\n </small>\n </div>\n</div>\n<div *ngIf=\"showTableview()\">\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n</div>\n" }]
136
- }], ctorParameters: function () { return [{ type: i1.Router }]; } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZW50aXR5LXJldmlzaW9ucy9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBMEIsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRXZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFDSCwyQkFBMkIsRUFFM0IsNkJBQTZCLEVBQzdCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQiwwQkFBMEIsRUFDMUIscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUN0QixNQUFNLHdCQUF3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RUFBRTtnQkFDeEIsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxxREFBcUQsQ0FBQyxDQUFDLENBQUM7YUFDeEc7WUFDRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0QsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlELE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLG9DQUFvQyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckcsQ0FBQyxDQUFDO2FBQ0QsZUFBZSxDQUFDLG9EQUFvRCxDQUFDLENBQUM7UUFDM0UsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzNCLENBQUM7OEdBbklRLG9DQUFvQztrR0FBcEMsb0NBQW9DLGtIQ3JDakQsa3lCQWlCQSw0Q0RpQmMsb0JBQW9CLGlWQUFFLDBCQUEwQixrSEFBRSxXQUFXLCtWQUFhLElBQUksNEZBQUUsZUFBZSwyRkFBRSxZQUFZOzsyRkFHOUcsb0NBQW9DO2tCQU5oRCxTQUFTO2lDQUNNLElBQUksWUFDTixpQ0FBaUMsV0FDbEMsQ0FBQyxvQkFBb0IsRUFBRSwwQkFBMEIsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NvbXBvbmVudCwgRGVzdHJveVJlZiwgT25Jbml0LCBXcml0YWJsZVNpZ25hbCwgaW5qZWN0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQge0Zvcm1seU1vZHVsZX0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIHRocm93RXJyb3J9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBBTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQsXG4gICAgQWN0aW9uRGVzY3JpcHRvcixcbiAgICBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvcixcbiAgICBMb29rdXBEYXRhUHJvdmlkZXIsXG4gICAgTWVkaXVzUXVlcnlSZXN1bHQsXG4gICAgTW5nRHJvcGRvd25Db21wb25lbnQsXG4gICAgTW5nSW50ZXJuYWxFcnJvcixcbiAgICBNbmdUYWJsZXZpZXdSb3V0ZUNvbXBvbmVudCxcbiAgICBUYWJsZXZpZXdEYXRhUHJvdmlkZXIsXG4gICAgVGFibGV2aWV3RGVzY3JpcHRvclxufSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vLi4vLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5pbXBvcnQge01uZ0F1ZGl0UmV2aXNpb25zQXBpU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2F1ZGl0LXJldmlzaW9ucy1hcGkuc2VydmljZSc7XG5pbXBvcnQge01uZ0F1ZGl0U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2F1ZGl0LnNlcnZpY2UnO1xuaW1wb3J0IHtNbmdHdWlFbnRpdHlNb2RlbFdpdGhJMThufSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbCc7XG5pbXBvcnQge01uZ1JldkVudGl0eVdpdGhJZH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JldkVudGl0eVdpdGhJZC5tb2RlbCc7XG5pbXBvcnQge0F1ZGl0VXRpbH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYXVkaXQudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctYXVkaXQtZW50aXR5LXJldmlzaW9ucy1wYWdlJyxcbiAgICBpbXBvcnRzOiBbTW5nRHJvcGRvd25Db21wb25lbnQsIE1uZ1RhYmxldmlld1JvdXRlQ29tcG9uZW50LCBGb3Jtc01vZHVsZSwgQXN5bmNQaXBlLCBOZ0lmLCBUcmFuc2xhdGVNb2R1bGUsIEZvcm1seU1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICdhdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE1uZ0F1ZGl0RW50aXR5UmV2aXNpb25zUGFnZUNvbXBvbmVudCBleHRlbmRzIEFNbmdUYWJsZXZpZXdSb3V0ZUNvbXBvbmVudDxNbmdSZXZFbnRpdHlXaXRoSWQsIHVua25vd24+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSBhdWRpdFNlcnZpY2UgPSBpbmplY3QoTW5nQXVkaXRTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJldmlzaXNvbnNBcGlTZXJ2aWNlID0gaW5qZWN0KE1uZ0F1ZGl0UmV2aXNpb25zQXBpU2VydmljZSk7XG5cbiAgICBwdWJsaWMgcmV2TW9kZWw/OiBNbmdHdWlFbnRpdHlNb2RlbER0bztcbiAgICBwdWJsaWMgc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT86IE1uZ0d1aUVudGl0eU1vZGVsRHRvO1xuICAgIHB1YmxpYyByZXZpc2lvbkVudGl0aWVzTG9va3VwUHJvdmlkZXI/OiBMb29rdXBEYXRhUHJvdmlkZXI8TW5nR3VpRW50aXR5TW9kZWxXaXRoSTE4biwgbmV2ZXI+O1xuXG4gICAgcHVibGljIHNob3dUYWJsZXZpZXc6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5yZXZpc2lvbkVudGl0aWVzTG9va3VwUHJvdmlkZXIgPSBuZXcgTG9va3VwRGF0YVByb3ZpZGVyPE1uZ0d1aUVudGl0eU1vZGVsV2l0aEkxOG4sIG5ldmVyPihNbmdHdWlFbnRpdHlNb2RlbFdpdGhJMThuKS53aXRoTG9va3VwKCgpID0+XG4gICAgICAgICAgICB0aGlzLmF1ZGl0U2VydmljZS5hdWRpdE1vZGVsJC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChtb2RlbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1vZGVsSTE4biA9IG1vZGVsIGFzIE1uZ0d1aUVudGl0eU1vZGVsV2l0aEkxOG5bXTtcbiAgICAgICAgICAgICAgICAgICAgbW9kZWxJMThuLnNvcnQoKG0xLCBtMikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG0xLmVudGl0eU5hbWUgJiYgbTIuZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtMS5lbnRpdHlOYW1lLmxvY2FsZUNvbXBhcmUobTIuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG0xLmVudGl0eU5hbWUgJiYgIW0yLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgbW9kZWxJMThuLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2xhdGVkRW50aXR5TmFtZSA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdBdWRpdEVudGl0aWVzLicgKyBpdGVtLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5lbnRpdHlOYW1lSTE4biA9IHRyYW5zbGF0ZWRFbnRpdHlOYW1lLmluY2x1ZGVzKCdBdWRpdEVudGl0aWVzLicpID8gaXRlbS5lbnRpdHlOYW1lIDogdHJhbnNsYXRlZEVudGl0eU5hbWU7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbW9kZWxJMThuO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucm91dGUucGFyYW1NYXAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHlDbGFzcyA9IHBhcmFtcy5nZXQoJ2VudGl0eUNsYXNzJyk7XG4gICAgICAgICAgICBpZiAoZW50aXR5Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmF1ZGl0U2VydmljZS5hdWRpdE1vZGVsJCwgdGhpcy5hdWRpdFNlcnZpY2UucmV2TW9kZWwkXSkuc3Vic2NyaWJlKChbZW50aXRpZXMsIHJldk1vZGVsXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJldk1vZGVsID0gcmV2TW9kZWw7XG5cbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBlIG9mIGVudGl0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZS5lbnRpdHlOYW1lID09PSBlbnRpdHlDbGFzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2hvd1RhYmxldmlldy5zZXQodHJ1ZSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJldmlzaW9uRW50aXR5Q2hhbmdlKCkge1xuICAgICAgICB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KGZhbHNlKTtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nICsgdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWVdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1ZGl0L2VudGl0eS1yZXZpc2lvbnMvJ10pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxldmlld0Rlc2NyaXB0b3IoKSB7XG4gICAgICAgIGlmICghdGhpcy5yZXZNb2RlbCB8fCAhdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTW5nSW50ZXJuYWxFcnJvcignTm8gcmV2aXNpb24gbW9kZWwgb3IgcmV2aXNpb24gZW50aXR5IGlzIHByb3ZpZGVkIGZvciB0YWJsZXZpZXcuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZXNjID0gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3IoTW5nUmV2RW50aXR5V2l0aElkLCAnbWVyZ2VkSWQnLCB1bmRlZmluZWQsIHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lKTtcblxuICAgICAgICBBdWRpdFV0aWwuYnVpbGREZXNjcmlwdG9yRm9yRW50aXR5UmV2aXNpb24oZGVzYywgdGhpcy5yZXZNb2RlbCwgdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5KTtcblxuICAgICAgICBkZXNjLnRhYmxlLndpdGhDb2x1bW5zUmVzaXphYmxlKCk7XG4gICAgICAgIGRlc2MudGFibGUud2l0aEN1cnJlbnRDb2x1bW5zUmVvcmRlcmFibGUoKTtcbiAgICAgICAgZGVzYy50YWJsZS53aXRoQ3VycmVudENvbHVtbnNUb2dnbGVhYmxlKCk7XG4gICAgICAgIGRlc2MudGFibGUud2l0aERhdGFLZXkoYEVudGl0eVJldmlzaW9uc1BhZ2VfJHt0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHkuZW50aXR5TmFtZX1gKTtcblxuICAgICAgICByZXR1cm4gZGVzYztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVGFibGV2aWV3RGF0YVByb3ZpZGVyKCkge1xuICAgICAgICBpZiAoIXRoaXMucmV2TW9kZWwgfHwgIXRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT8uZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE1uZ0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIG1vZGVsIG9yIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgdGFibGV2aWV3LicpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXR5TmFtZSA9IHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lO1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0RhdGFQcm92aWRlcihNbmdSZXZFbnRpdHlXaXRoSWQpLndpdGhHZXRBbGwocXAgPT5cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eT8uZW50aXR5TmFtZVxuICAgICAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXZpc2lzb25zQXBpU2VydmljZS5jb3VudFJldmlzaW9uc1dpdGhTdGF0ZUZvckVudGl0eVR5cGUocXAsIGVudGl0eU5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmV2aXNpc29uc0FwaVNlcnZpY2UubGlzdFJldmlzaW9uc1dpdGhTdGF0ZUZvckVudGl0eVR5cGUocXAsIGVudGl0eU5hbWUpXG4gICAgICAgICAgICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIG1hcCgoW2NvdW50LCB2YWx1ZXNdKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZUFuZElkTGlzdCA9IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZSBvZiB2YWx1ZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJldkVudGl0eVdpdGhTdGF0ZUFuZElkID0gbmV3IE1uZ1JldkVudGl0eVdpdGhJZCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWQubWVyZ2VkSWQgPSByZXZFbnRpdHlXaXRoU3RhdGUucmV2RW50aXR5Py5bJ3JldiddICsgJ18nICsgcmV2RW50aXR5V2l0aFN0YXRlLmVudGl0eVN0YXRlPy5bJ2lkJ107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5yZXZUeXBlID0gcmV2RW50aXR5V2l0aFN0YXRlLnJldlR5cGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5yZXZFbnRpdHkgPSByZXZFbnRpdHlXaXRoU3RhdGUucmV2RW50aXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWQuZW50aXR5U3RhdGUgPSByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5U3RhdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5lbnRpdHlDbGFzc05hbWUgPSByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5Q2xhc3NOYW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0LnB1c2gocmV2RW50aXR5V2l0aFN0YXRlQW5kSWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBNZWRpdXNRdWVyeVJlc3VsdC5mcm9tQXJyYXkocmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0LCBjb3VudCk7XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA6IHRocm93RXJyb3IoKCkgPT4gbmV3IE1uZ0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgbGlzdC4nKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlQWN0aW9uRGVzY3JpcHRvcnMoKTogQXJyYXk8QWN0aW9uRGVzY3JpcHRvcjxNbmdSZXZFbnRpdHlXaXRoSWQ+PiB7XG4gICAgICAgIGlmICghdGhpcy5yZXZNb2RlbCB8fCAhdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTW5nSW50ZXJuYWxFcnJvcignTm8gcmV2aXNpb24gbW9kZWwgb3IgcmV2aXNpb24gZW50aXR5IGlzIHByb3ZpZGVkIGZvciB0YWJsZXZpZXcuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWU7XG4gICAgICAgIGNvbnN0IGRldGFpbHNBY3Rpb24gPSBuZXcgQWN0aW9uRWRpdG9yRGV0YWlsc0Rlc2NyaXB0b3IodGhpcy5kZXNjcmlwdG9yLmRldGFpbHNFZGl0b3IpXG4gICAgICAgICAgICAud2l0aEZldGNoRnVuY3Rpb24oY3R4ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IE1uZ0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgZGV0YWlscy4nKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghY3R4LnBhcmFtZXRlcnMuaXRlbUlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBNbmdJbnRlcm5hbEVycm9yKCdObyBpdGVtIGlkIGZvciByZXZpc2lvbiBlbnRpdHkgZGV0YWlscyBpcyBwcm92aWRlZC4nKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHJldklkID0gY3R4LnBhcmFtZXRlcnMuaXRlbUlkLnRvU3RyaW5nKCkuc3BsaXQoJ18nKVswXTtcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtSWQgPSBjdHgucGFyYW1ldGVycy5pdGVtSWQudG9TdHJpbmcoKS5zcGxpdCgnXycpWzFdO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJldmlzaXNvbnNBcGlTZXJ2aWNlLmZldGNoUmV2aXNpb25zV2l0aFN0YXRlRm9yRW50aXR5VHlwZShlbnRpdHlOYW1lLCByZXZJZCwgaXRlbUlkKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAud2l0aEVkaXRvclRpdGxlKCdwYWdlcy5lbnRpdHlSZXZpc2lvbnMuYWN0aW9ucy5kZXRhaWxzLmVkaXRvci50aXRsZScpO1xuICAgICAgICByZXR1cm4gW2RldGFpbHNBY3Rpb25dO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjYXJkXCI+XG4gICAgPGRpdiBjbGFzcz1cImZpZWxkIG1iLTBcIj5cbiAgICAgICAgPG1uZy1kcm9wZG93blxuICAgICAgICAgICAgaWQ9XCJyZXZpc2lvbkVudGl0eURyb3Bkb3duXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIncGFnZXMuZW50aXR5UmV2aXNpb25zLmRyb3Bkb3duLnBsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICBbaXRlbXNMYWJlbFByb3BlcnR5XT1cIidlbnRpdHlOYW1lSTE4bidcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFJldmlzaW9uRW50aXR5XCJcbiAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblJldmlzaW9uRW50aXR5Q2hhbmdlKClcIlxuICAgICAgICAgICAgW2RhdGFQcm92aWRlcl09XCJyZXZpc2lvbkVudGl0aWVzTG9va3VwUHJvdmlkZXJcIj48L21uZy1kcm9wZG93bj5cbiAgICAgICAgPHNtYWxsICpuZ0lmPVwiIXNlbGVjdGVkUmV2aXNpb25FbnRpdHlcIiBjbGFzcz1cImJsb2NrXCI+XG4gICAgICAgICAgICB7eyAncGFnZXMuZW50aXR5UmV2aXNpb25zLmRyb3Bkb3duLmhlbHBUZXh0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NtYWxsPlxuICAgIDwvZGl2PlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwic2hvd1RhYmxldmlldygpXCI+XG4gICAgPG1uZy10YWJsZXZpZXctcm91dGUgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvclwiIFtkYXRhUHJvdmlkZXJdPVwiZGF0YVByb3ZpZGVyXCIgW2FjdGlvbnNdPVwiYWN0aW9uc1wiPjwvbW5nLXRhYmxldmlldy1yb3V0ZT5cbjwvZGl2PlxuIl19
134
+ args: [{ standalone: true, selector: 'mng-audit-entity-revisions-page', imports: [MngDropdownComponent, MngTableviewRouteComponent, FormsModule, AsyncPipe, TranslateModule, FormlyModule], 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()\"\n [dataProvider]=\"revisionEntitiesLookupProvider\"></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()) {\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n}\n" }]
135
+ }], ctorParameters: () => [{ type: i1.Router }] });
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtZW50aXR5LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdlcy9lbnRpdHktcmV2aXNpb25zL2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvZW50aXR5LXJldmlzaW9ucy9hdWRpdC1lbnRpdHktcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUEwQixNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsYUFBYSxFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUNILDJCQUEyQixFQUUzQiw2QkFBNkIsRUFDN0Isa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixvQkFBb0IsRUFDcEIsZ0JBQWdCLEVBQ2hCLDBCQUEwQixFQUMxQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ3RCLE1BQU0sd0JBQXdCLENBQUM7QUFH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Q0FBQzthQUN4RztZQUNELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM3RCxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUQsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsb0NBQW9DLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRyxDQUFDLENBQUM7YUFDRCxlQUFlLENBQUMsb0RBQW9ELENBQUMsQ0FBQztRQUMzRSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0IsQ0FBQzs4R0FsSVEsb0NBQW9DO2tHQUFwQyxvQ0FBb0Msa0hDdENqRCxpekJBbUJBLDRDRGdCYyxvQkFBb0IsOFZBQUUsMEJBQTBCLGtIQUFFLFdBQVcsOFZBQWEsZUFBZSwyRkFBRSxZQUFZOzsyRkFHeEcsb0NBQW9DO2tCQU5oRCxTQUFTO2lDQUNNLElBQUksWUFDTixpQ0FBaUMsV0FDbEMsQ0FBQyxvQkFBb0IsRUFBRSwwQkFBMEIsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q29tcG9uZW50LCBEZXN0cm95UmVmLCBPbkluaXQsIFdyaXRhYmxlU2lnbmFsLCBpbmplY3QsIHNpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7Rm9ybWx5TW9kdWxlfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgdGhyb3dFcnJvcn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIEFNbmdUYWJsZXZpZXdSb3V0ZUNvbXBvbmVudCxcbiAgICBBY3Rpb25EZXNjcmlwdG9ySW5zdCxcbiAgICBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvcixcbiAgICBMb29rdXBEYXRhUHJvdmlkZXIsXG4gICAgTG9va3VwRGF0YVByb3ZpZGVySW5zdCxcbiAgICBNZWRpdXNRdWVyeVJlc3VsdCxcbiAgICBNbmdEcm9wZG93bkNvbXBvbmVudCxcbiAgICBNbmdJbnRlcm5hbEVycm9yLFxuICAgIE1uZ1RhYmxldmlld1JvdXRlQ29tcG9uZW50LFxuICAgIFRhYmxldmlld0RhdGFQcm92aWRlcixcbiAgICBUYWJsZXZpZXdEZXNjcmlwdG9yXG59IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0d1aUVudGl0eU1vZGVsRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL2d1aUVudGl0eU1vZGVsJztcbmltcG9ydCB7TW5nQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQtcmV2aXNpb25zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7TW5nQXVkaXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQuc2VydmljZSc7XG5pbXBvcnQge01uZ0d1aUVudGl0eU1vZGVsV2l0aEkxOG59IGZyb20gJy4uLy4uLy4uL21vZGVscy9ndWlFbnRpdHlNb2RlbFdpdGhJMThuLm1vZGVsJztcbmltcG9ydCB7TW5nUmV2RW50aXR5V2l0aElkfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsJztcbmltcG9ydCB7QXVkaXRVdGlsfSBmcm9tICcuLi8uLi8uLi91dGlscy9hdWRpdC51dGlsJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1hdWRpdC1lbnRpdHktcmV2aXNpb25zLXBhZ2UnLFxuICAgIGltcG9ydHM6IFtNbmdEcm9wZG93bkNvbXBvbmVudCwgTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQsIEZvcm1zTW9kdWxlLCBBc3luY1BpcGUsIFRyYW5zbGF0ZU1vZHVsZSwgRm9ybWx5TW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJ2F1ZGl0LWVudGl0eS1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTW5nQXVkaXRFbnRpdHlSZXZpc2lvbnNQYWdlQ29tcG9uZW50IGV4dGVuZHMgQU1uZ1RhYmxldmlld1JvdXRlQ29tcG9uZW50PE1uZ1JldkVudGl0eVdpdGhJZD4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcml2YXRlIGF1ZGl0U2VydmljZSA9IGluamVjdChNbmdBdWRpdFNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmV2aXNpb25zQXBpU2VydmljZSA9IGluamVjdChNbmdBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2UpO1xuXG4gICAgcHVibGljIHJldk1vZGVsPzogTW5nR3VpRW50aXR5TW9kZWxEdG87XG4gICAgcHVibGljIHNlbGVjdGVkUmV2aXNpb25FbnRpdHk/OiBNbmdHdWlFbnRpdHlNb2RlbER0bztcbiAgICBwdWJsaWMgcmV2aXNpb25FbnRpdGllc0xvb2t1cFByb3ZpZGVyPzogTG9va3VwRGF0YVByb3ZpZGVySW5zdDxNbmdHdWlFbnRpdHlNb2RlbFdpdGhJMThuPjtcblxuICAgIHB1YmxpYyBzaG93VGFibGV2aWV3OiBXcml0YWJsZVNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMucmV2aXNpb25FbnRpdGllc0xvb2t1cFByb3ZpZGVyID0gTG9va3VwRGF0YVByb3ZpZGVyLmZyb21DbGFzcyhNbmdHdWlFbnRpdHlNb2RlbFdpdGhJMThuKS53aXRoTG9va3VwKCgpID0+XG4gICAgICAgICAgICB0aGlzLmF1ZGl0U2VydmljZS5hdWRpdE1vZGVsJC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChtb2RlbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1vZGVsSTE4biA9IG1vZGVsIGFzIE1uZ0d1aUVudGl0eU1vZGVsV2l0aEkxOG5bXTtcbiAgICAgICAgICAgICAgICAgICAgbW9kZWxJMThuLnNvcnQoKG0xLCBtMikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG0xLmVudGl0eU5hbWUgJiYgbTIuZW50aXR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBtMS5lbnRpdHlOYW1lLmxvY2FsZUNvbXBhcmUobTIuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG0xLmVudGl0eU5hbWUgJiYgIW0yLmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgbW9kZWxJMThuLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2xhdGVkRW50aXR5TmFtZSA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdBdWRpdEVudGl0aWVzLicgKyBpdGVtLmVudGl0eU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5lbnRpdHlOYW1lSTE4biA9IHRyYW5zbGF0ZWRFbnRpdHlOYW1lLmluY2x1ZGVzKCdBdWRpdEVudGl0aWVzLicpID8gaXRlbS5lbnRpdHlOYW1lIDogdHJhbnNsYXRlZEVudGl0eU5hbWU7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbW9kZWxJMThuO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucm91dGUucGFyYW1NYXAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHlDbGFzcyA9IHBhcmFtcy5nZXQoJ2VudGl0eUNsYXNzJyk7XG4gICAgICAgICAgICBpZiAoZW50aXR5Q2xhc3MpIHtcbiAgICAgICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmF1ZGl0U2VydmljZS5hdWRpdE1vZGVsJCwgdGhpcy5hdWRpdFNlcnZpY2UucmV2TW9kZWwkXSkuc3Vic2NyaWJlKChbZW50aXRpZXMsIHJldk1vZGVsXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJldk1vZGVsID0gcmV2TW9kZWw7XG5cbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBlIG9mIGVudGl0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZS5lbnRpdHlOYW1lID09PSBlbnRpdHlDbGFzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSA9IGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2hvd1RhYmxldmlldy5zZXQodHJ1ZSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJldmlzaW9uRW50aXR5Q2hhbmdlKCkge1xuICAgICAgICB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KGZhbHNlKTtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXVkaXQvZW50aXR5LXJldmlzaW9ucy8nICsgdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWVdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1ZGl0L2VudGl0eS1yZXZpc2lvbnMvJ10pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxldmlld0Rlc2NyaXB0b3IoKSB7XG4gICAgICAgIGlmICghdGhpcy5yZXZNb2RlbCB8fCAhdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTW5nSW50ZXJuYWxFcnJvcignTm8gcmV2aXNpb24gbW9kZWwgb3IgcmV2aXNpb24gZW50aXR5IGlzIHByb3ZpZGVkIGZvciB0YWJsZXZpZXcuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZXNjID0gVGFibGV2aWV3RGVzY3JpcHRvci5mcm9tQ2xhc3MoTW5nUmV2RW50aXR5V2l0aElkLCAnbWVyZ2VkSWQnLCB1bmRlZmluZWQsIHRoaXMuc2VsZWN0ZWRSZXZpc2lvbkVudGl0eS5lbnRpdHlOYW1lKTtcblxuICAgICAgICBBdWRpdFV0aWwuYnVpbGREZXNjcmlwdG9yRm9yRW50aXR5UmV2aXNpb24oZGVzYywgdGhpcy5yZXZNb2RlbCwgdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5KTtcblxuICAgICAgICBkZXNjLnRhYmxlLndpdGhDb2x1bW5zUmVzaXphYmxlKCk7XG4gICAgICAgIGRlc2MudGFibGUud2l0aEN1cnJlbnRDb2x1bW5zUmVvcmRlcmFibGUoKTtcbiAgICAgICAgZGVzYy50YWJsZS53aXRoQ3VycmVudENvbHVtbnNUb2dnbGVhYmxlKCk7XG5cbiAgICAgICAgcmV0dXJuIGRlc2M7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxldmlld0RhdGFQcm92aWRlcigpIHtcbiAgICAgICAgaWYgKCF0aGlzLnJldk1vZGVsIHx8ICF0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHk/LmVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBNbmdJbnRlcm5hbEVycm9yKCdObyByZXZpc2lvbiBtb2RlbCBvciByZXZpc2lvbiBlbnRpdHkgaXMgcHJvdmlkZWQgZm9yIHRhYmxldmlldy4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVudGl0eU5hbWUgPSB0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHkuZW50aXR5TmFtZTtcbiAgICAgICAgcmV0dXJuIFRhYmxldmlld0RhdGFQcm92aWRlci5mcm9tQ2xhc3MoTW5nUmV2RW50aXR5V2l0aElkKS53aXRoR2V0QWxsKHFwID0+XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkUmV2aXNpb25FbnRpdHk/LmVudGl0eU5hbWVcbiAgICAgICAgICAgICAgICA/IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmV2aXNpb25zQXBpU2VydmljZS5jb3VudFJldmlzaW9uc1dpdGhTdGF0ZUZvckVudGl0eVR5cGUocXAsIGVudGl0eU5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmV2aXNpb25zQXBpU2VydmljZS5saXN0UmV2aXNpb25zV2l0aFN0YXRlRm9yRW50aXR5VHlwZShxcCwgZW50aXR5TmFtZSlcbiAgICAgICAgICAgICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgbWFwKChbY291bnQsIHZhbHVlc10pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWRMaXN0ID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlIG9mIHZhbHVlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aFN0YXRlQW5kSWQgPSBuZXcgTW5nUmV2RW50aXR5V2l0aElkKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5tZXJnZWRJZCA9IHJldkVudGl0eVdpdGhTdGF0ZS5yZXZFbnRpdHk/LlsncmV2J10gKyAnXycgKyByZXZFbnRpdHlXaXRoU3RhdGUuZW50aXR5U3RhdGU/LlsnaWQnXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLnJldlR5cGUgPSByZXZFbnRpdHlXaXRoU3RhdGUucmV2VHlwZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLnJldkVudGl0eSA9IHJldkVudGl0eVdpdGhTdGF0ZS5yZXZFbnRpdHk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZC5lbnRpdHlTdGF0ZSA9IHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlTdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldkVudGl0eVdpdGhTdGF0ZUFuZElkLmVudGl0eUNsYXNzTmFtZSA9IHJldkVudGl0eVdpdGhTdGF0ZS5lbnRpdHlDbGFzc05hbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QucHVzaChyZXZFbnRpdHlXaXRoU3RhdGVBbmRJZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE1lZGl1c1F1ZXJ5UmVzdWx0LmZyb21BcnJheShyZXZFbnRpdHlXaXRoU3RhdGVBbmRJZExpc3QsIGNvdW50KTtcbiAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogdGhyb3dFcnJvcigoKSA9PiBuZXcgTW5nSW50ZXJuYWxFcnJvcignTm8gcmV2aXNpb24gZW50aXR5IGlzIHByb3ZpZGVkIGZvciBsaXN0LicpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBjcmVhdGVBY3Rpb25EZXNjcmlwdG9ycygpOiBBcnJheTxBY3Rpb25EZXNjcmlwdG9ySW5zdDxNbmdSZXZFbnRpdHlXaXRoSWQ+PiB7XG4gICAgICAgIGlmICghdGhpcy5yZXZNb2RlbCB8fCAhdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5Py5lbnRpdHlOYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgTW5nSW50ZXJuYWxFcnJvcignTm8gcmV2aXNpb24gbW9kZWwgb3IgcmV2aXNpb24gZW50aXR5IGlzIHByb3ZpZGVkIGZvciB0YWJsZXZpZXcuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gdGhpcy5zZWxlY3RlZFJldmlzaW9uRW50aXR5LmVudGl0eU5hbWU7XG4gICAgICAgIGNvbnN0IGRldGFpbHNBY3Rpb24gPSBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvci5jcmVhdGUodGhpcy5kZXNjcmlwdG9yLmRldGFpbHNFZGl0b3IpXG4gICAgICAgICAgICAud2l0aEZldGNoRnVuY3Rpb24oY3R4ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWVudGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IE1uZ0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGVudGl0eSBpcyBwcm92aWRlZCBmb3IgZGV0YWlscy4nKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghY3R4LnBhcmFtZXRlcnMuaXRlbUlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBNbmdJbnRlcm5hbEVycm9yKCdObyBpdGVtIGlkIGZvciByZXZpc2lvbiBlbnRpdHkgZGV0YWlscyBpcyBwcm92aWRlZC4nKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHJldklkID0gY3R4LnBhcmFtZXRlcnMuaXRlbUlkLnRvU3RyaW5nKCkuc3BsaXQoJ18nKVswXTtcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtSWQgPSBjdHgucGFyYW1ldGVycy5pdGVtSWQudG9TdHJpbmcoKS5zcGxpdCgnXycpWzFdO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJldmlzaW9uc0FwaVNlcnZpY2UuZmV0Y2hSZXZpc2lvbnNXaXRoU3RhdGVGb3JFbnRpdHlUeXBlKGVudGl0eU5hbWUsIHJldklkLCBpdGVtSWQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC53aXRoRWRpdG9yVGl0bGUoJ3BhZ2VzLmVudGl0eVJldmlzaW9ucy5hY3Rpb25zLmRldGFpbHMuZWRpdG9yLnRpdGxlJyk7XG4gICAgICAgIHJldHVybiBbZGV0YWlsc0FjdGlvbl07XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNhcmRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmllbGQgbWItMFwiPlxuICAgICAgICA8bW5nLWRyb3Bkb3duXG4gICAgICAgICAgICBpZD1cInJldmlzaW9uRW50aXR5RHJvcGRvd25cIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidwYWdlcy5lbnRpdHlSZXZpc2lvbnMuZHJvcGRvd24ucGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgIG9wdGlvbnNMYWJlbFByb3BlcnR5PVwiZW50aXR5TmFtZUkxOG5cIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFJldmlzaW9uRW50aXR5XCJcbiAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblJldmlzaW9uRW50aXR5Q2hhbmdlKClcIlxuICAgICAgICAgICAgW2RhdGFQcm92aWRlcl09XCJyZXZpc2lvbkVudGl0aWVzTG9va3VwUHJvdmlkZXJcIj48L21uZy1kcm9wZG93bj5cbiAgICAgICAgQGlmICghc2VsZWN0ZWRSZXZpc2lvbkVudGl0eSkge1xuICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiYmxvY2tcIj5cbiAgICAgICAgICAgICAgICB7eyAncGFnZXMuZW50aXR5UmV2aXNpb25zLmRyb3Bkb3duLmhlbHBUZXh0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9zbWFsbD5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuPC9kaXY+XG5AaWYgKHNob3dUYWJsZXZpZXcoKSkge1xuICAgIDxtbmctdGFibGV2aWV3LXJvdXRlIFtkZXNjcmlwdG9yXT1cImRlc2NyaXB0b3JcIiBbZGF0YVByb3ZpZGVyXT1cImRhdGFQcm92aWRlclwiIFthY3Rpb25zXT1cImFjdGlvbnNcIj48L21uZy10YWJsZXZpZXctcm91dGU+XG59XG4iXX0=
@@ -1,10 +1,10 @@
1
- import { AsyncPipe, JsonPipe, NgIf } from '@angular/common';
1
+ import { AsyncPipe, JsonPipe } from '@angular/common';
2
2
  import { ChangeDetectionStrategy, Component, DestroyRef, Injector, inject, signal } from '@angular/core';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { RouterOutlet } from '@angular/router';
5
- import { combineLatest, throwError } from 'rxjs';
5
+ import { combineLatest } from 'rxjs';
6
6
  import { map } from 'rxjs/operators';
7
- import { AMngTableviewRouteComponent, ActionEditorDetailsDescriptor, EditorDescriptor, MediusQueryResult, MngInternalError, MngTableviewComponent, MngTableviewRouteComponent, TableFilterDisplayEnum, TableviewDataProvider, TableviewDescriptor, TableviewEditorTypeEnum } from '@mediusinc/mng-commons';
7
+ import { AMngTableviewRouteComponent, ActionEditorDetailsDescriptor, EditorDescriptor, MediusQueryResult, MngTableviewComponent, MngTableviewRouteComponent, ModelDescriptor, TableFilterDisplayEnum, TableviewDataProvider, TableviewDescriptor, TableviewEditorTypeEnum, itemIdToDefined } from '@mediusinc/mng-commons';
8
8
  import { MngRevEntityWithChangesDto } from '../../../api/models/revEntityWithChangesDto';
9
9
  import { MngAuditRevisionsApiService } from '../../../api/services/audit-revisions-api.service';
10
10
  import { MngAuditService } from '../../../api/services/audit.service';
@@ -34,42 +34,52 @@ export class MngAuditRevisionsPageComponent extends AMngTableviewRouteComponent
34
34
  createTableviewDescriptor() {
35
35
  if (this.revModel) {
36
36
  const idProperty = this.revModel.properties?.filter(prop => prop.isId).map(prop => prop.resolvedPropertyName)[0];
37
- const desc = new TableviewDescriptor(MngRevEntity, idProperty, undefined, this.revModel.entityName);
38
- const detailsDescriptor = new EditorDescriptor(MngRevEntityWithChangesDto, 'revEntity.' + idProperty, undefined, TableviewEditorTypeEnum.Details);
37
+ const model = ModelDescriptor.fromClass(MngRevEntity);
38
+ if (this.revModel.entityName)
39
+ model.withI18nBase(this.revModel.entityName);
40
+ if (idProperty)
41
+ model.withIdPropertyUnsafe(idProperty);
42
+ const desc = TableviewDescriptor.fromModel(model);
43
+ const detailsDescriptor = EditorDescriptor.fromClass(MngRevEntityWithChangesDto, undefined, undefined, undefined, TableviewEditorTypeEnum.Details);
44
+ detailsDescriptor.model.withIdPropertyUnsafe('revEntity.' + idProperty);
39
45
  if (this.revModel.properties) {
40
46
  AuditUtil.addColumnsFromModel(desc.table, this.revModel.properties);
41
47
  AuditUtil.addFieldsFromModel(detailsDescriptor, this.revModel.properties);
42
48
  }
43
- detailsDescriptor.addField('entityNameChangesMap').asCustomComponent(EntityChangesFieldComponent, ['field-no-label'], { injector: this.injector }).withDisabled();
49
+ detailsDescriptor
50
+ .addField('entityNameChangesMap')
51
+ .asCustomComponent(EntityChangesFieldComponent, {
52
+ fieldWrappers: ['field-no-label'],
53
+ inputs: { injector: this.injector }
54
+ })
55
+ .withDisabled();
44
56
  desc.withDetailsDescriptor(detailsDescriptor); // MngRevEntity is extended by MngRevEntityWithChangesDto, so no real harm here
45
57
  desc.table.withFilterDisplay(TableFilterDisplayEnum.Row);
46
58
  return desc;
47
59
  }
48
- return new TableviewDescriptor(MngRevEntity);
60
+ return TableviewDescriptor.fromClass(MngRevEntity);
49
61
  }
50
62
  createTableviewDataProvider() {
51
63
  if (this.revModel) {
52
- return new TableviewDataProvider(MngRevEntity).withGetAll(qp => combineLatest([this.revisisonsApiService.getRevisionCount(qp), this.revisisonsApiService.getRevisionList(qp)]).pipe(map(([count, values]) => MediusQueryResult.fromArray(values, count))));
64
+ return TableviewDataProvider.fromClass(MngRevEntity).withGetAll(qp => combineLatest([this.revisisonsApiService.getRevisionCount(qp), this.revisisonsApiService.getRevisionList(qp)]).pipe(map(([count, values]) => MediusQueryResult.fromArray(values, count))));
53
65
  }
54
- return new TableviewDataProvider(MngRevEntity);
66
+ return TableviewDataProvider.fromClass(MngRevEntity);
55
67
  }
56
68
  createActionDescriptors() {
57
- const detailsAction = new ActionEditorDetailsDescriptor(this.descriptor.detailsEditor).withFetchFunction(ctx => ctx.parameters.itemId
58
- ? this.revisisonsApiService.getAllChangesForRevision(ctx.parameters.itemId).pipe(map(item => {
59
- const revEntityWithChanges = new MngRevEntityDetailed();
60
- revEntityWithChanges.rev = ctx.parameters.itemId;
61
- revEntityWithChanges.revEntity = item.revEntity;
62
- revEntityWithChanges.entityNameChangesMap = item.entityNameChangesMap;
63
- return revEntityWithChanges;
64
- }))
65
- : throwError(() => new MngInternalError('No revision id provided for fetch function')));
69
+ const detailsAction = ActionEditorDetailsDescriptor.create(this.descriptor.detailsEditor).withFetchFunction(ctx => this.revisisonsApiService.getAllChangesForRevision(itemIdToDefined(ctx.parameters.itemId)).pipe(map(item => {
70
+ const revEntityWithChanges = new MngRevEntityDetailed();
71
+ revEntityWithChanges.rev = ctx.parameters.itemId;
72
+ revEntityWithChanges.revEntity = item.revEntity;
73
+ revEntityWithChanges.entityNameChangesMap = item.entityNameChangesMap;
74
+ return revEntityWithChanges;
75
+ })));
66
76
  return [detailsAction];
67
77
  }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: MngAuditRevisionsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: MngAuditRevisionsPageComponent, isStandalone: true, selector: "mng-audit-revisions-page", usesInheritance: true, ngImport: i0, template: "<mng-tableview-route *ngIf=\"showTableview()\" [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MngTableviewRouteComponent, selector: "mng-tableview-route", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MngAuditRevisionsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: MngAuditRevisionsPageComponent, isStandalone: true, selector: "mng-audit-revisions-page", usesInheritance: true, ngImport: i0, template: "@if (showTableview()) {\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n}\n", dependencies: [{ kind: "component", type: MngTableviewRouteComponent, selector: "mng-tableview-route", inputs: ["descriptor", "dataProvider", "actions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
80
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: MngAuditRevisionsPageComponent, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MngAuditRevisionsPageComponent, decorators: [{
72
82
  type: Component,
73
- args: [{ standalone: true, selector: 'mng-audit-revisions-page', imports: [NgIf, MngTableviewComponent, AsyncPipe, MngTableviewComponent, RouterOutlet, JsonPipe, MngTableviewRouteComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mng-tableview-route *ngIf=\"showTableview()\" [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n" }]
83
+ args: [{ standalone: true, selector: 'mng-audit-revisions-page', imports: [MngTableviewComponent, AsyncPipe, MngTableviewComponent, RouterOutlet, JsonPipe, MngTableviewRouteComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (showTableview()) {\n <mng-tableview-route [descriptor]=\"descriptor\" [dataProvider]=\"dataProvider\" [actions]=\"actions\"></mng-tableview-route>\n}\n" }]
74
84
  }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL3JldmlzaW9ucy9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvcmV2aXNpb25zL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBMEIsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFDSCwyQkFBMkIsRUFFM0IsNkJBQTZCLEVBQzdCLGdCQUFnQixFQUVoQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQiwwQkFBMEIsRUFDMUIsc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsdUJBQXVCLEVBQzFCLE1BQU0sd0JBQXdCLENBQUM7QUFHaEMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdkYsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FB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LENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQ0w7WUFDSCxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksZ0JBQWdCLENBQUMsNENBQTRDLENBQUMsQ0FBQyxDQUM3RixDQUFDO1FBQ0YsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzNCLENBQUM7OEdBbEVRLDhCQUE4QjtrR0FBOUIsOEJBQThCLDJHQ3hDM0MsMkpBQ0EsNENEb0NjLElBQUksNkZBQW1GLDBCQUEwQjs7MkZBR2xILDhCQUE4QjtrQkFQMUMsU0FBUztpQ0FDTSxJQUFJLFlBQ04sMEJBQTBCLFdBRTNCLENBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLDBCQUEwQixDQUFDLG1CQUMzRyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIEpzb25QaXBlLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBJbmplY3RvciwgT25Jbml0LCBXcml0YWJsZVNpZ25hbCwgaW5qZWN0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Um91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIHRocm93RXJyb3J9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBBTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQsXG4gICAgQWN0aW9uRGVzY3JpcHRvcixcbiAgICBBY3Rpb25FZGl0b3JEZXRhaWxzRGVzY3JpcHRvcixcbiAgICBFZGl0b3JEZXNjcmlwdG9yLFxuICAgIElUYWJsZXZpZXdEYXRhUHJvdmlkZXIsXG4gICAgTWVkaXVzUXVlcnlSZXN1bHQsXG4gICAgTW5nSW50ZXJuYWxFcnJvcixcbiAgICBNbmdUYWJsZXZpZXdDb21wb25lbnQsXG4gICAgTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQsXG4gICAgVGFibGVGaWx0ZXJEaXNwbGF5RW51bSxcbiAgICBUYWJsZXZpZXdEYXRhUHJvdmlkZXIsXG4gICAgVGFibGV2aWV3RGVzY3JpcHRvcixcbiAgICBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bVxufSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vLi4vLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5pbXBvcnQge01uZ1JldkVudGl0eVdpdGhDaGFuZ2VzRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL3JldkVudGl0eVdpdGhDaGFuZ2VzRHRvJztcbmltcG9ydCB7TW5nQXVkaXRSZXZpc2lvbnNBcGlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQtcmV2aXNpb25zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7TW5nQXVkaXRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9hcGkvc2VydmljZXMvYXVkaXQuc2VydmljZSc7XG5pbXBvcnQge01uZ1JldkVudGl0eURldGFpbGVkfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2LWVudGl0eS1kZXRhaWxlZC5tb2RlbCc7XG5pbXBvcnQge01uZ1JldkVudGl0eX0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Jldi1lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHtBdWRpdFV0aWx9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2F1ZGl0LnV0aWwnO1xuaW1wb3J0IHtFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnR9IGZyb20gJy4uLy4uL2VudGl0eS1jaGFuZ2VzLWZpZWxkL2VudGl0eS1jaGFuZ2VzLWZpZWxkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctYXVkaXQtcmV2aXNpb25zLXBhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW05nSWYsIE1uZ1RhYmxldmlld0NvbXBvbmVudCwgQXN5bmNQaXBlLCBNbmdUYWJsZXZpZXdDb21wb25lbnQsIFJvdXRlck91dGxldCwgSnNvblBpcGUsIE1uZ1RhYmxldmlld1JvdXRlQ29tcG9uZW50XSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBNbmdBdWRpdFJldmlzaW9uc1BhZ2VDb21wb25lbnQgZXh0ZW5kcyBBTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQ8TW5nUmV2RW50aXR5LCB1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgIHByaXZhdGUgYXVkaXRTZXJ2aWNlID0gaW5qZWN0KE1uZ0F1ZGl0U2VydmljZSk7XG4gICAgcHJpdmF0ZSByZXZpc2lzb25zQXBpU2VydmljZSA9IGluamVjdChNbmdBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2UpO1xuXG4gICAgcHJpdmF0ZSByZXZNb2RlbD86IE1uZ0d1aUVudGl0eU1vZGVsRHRvO1xuICAgIHB1YmxpYyBzaG93VGFibGV2aWV3OiBXcml0YWJsZVNpZ25hbDxib29sZWFuPiA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hdWRpdFNlcnZpY2UucmV2TW9kZWwkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiBtb2RlbCA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXZNb2RlbCA9IG1vZGVsO1xuICAgICAgICAgICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnNob3dUYWJsZXZpZXcuc2V0KHRydWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxldmlld0Rlc2NyaXB0b3IoKTogVGFibGV2aWV3RGVzY3JpcHRvcjxNbmdSZXZFbnRpdHk+IHtcbiAgICAgICAgaWYgKHRoaXMucmV2TW9kZWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGlkUHJvcGVydHkgPSB0aGlzLnJldk1vZGVsLnByb3BlcnRpZXM/LmZpbHRlcihwcm9wID0+IHByb3AuaXNJZCkubWFwKHByb3AgPT4gcHJvcC5yZXNvbHZlZFByb3BlcnR5TmFtZSlbMF07XG4gICAgICAgICAgICBjb25zdCBkZXNjID0gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3IoTW5nUmV2RW50aXR5LCBpZFByb3BlcnR5LCB1bmRlZmluZWQsIHRoaXMucmV2TW9kZWwuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICBjb25zdCBkZXRhaWxzRGVzY3JpcHRvciA9IG5ldyBFZGl0b3JEZXNjcmlwdG9yKE1uZ1JldkVudGl0eVdpdGhDaGFuZ2VzRHRvLCAncmV2RW50aXR5LicgKyBpZFByb3BlcnR5LCB1bmRlZmluZWQsIFRhYmxldmlld0VkaXRvclR5cGVFbnVtLkRldGFpbHMpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5yZXZNb2RlbC5wcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgQXVkaXRVdGlsLmFkZENvbHVtbnNGcm9tTW9kZWwoZGVzYy50YWJsZSwgdGhpcy5yZXZNb2RlbC5wcm9wZXJ0aWVzKTtcbiAgICAgICAgICAgICAgICBBdWRpdFV0aWwuYWRkRmllbGRzRnJvbU1vZGVsPE1uZ1JldkVudGl0eVdpdGhDaGFuZ2VzRHRvPihkZXRhaWxzRGVzY3JpcHRvciwgdGhpcy5yZXZNb2RlbC5wcm9wZXJ0aWVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGV0YWlsc0Rlc2NyaXB0b3IuYWRkRmllbGQoJ2VudGl0eU5hbWVDaGFuZ2VzTWFwJykuYXNDdXN0b21Db21wb25lbnQoRW50aXR5Q2hhbmdlc0ZpZWxkQ29tcG9uZW50LCBbJ2ZpZWxkLW5vLWxhYmVsJ10sIHtpbmplY3RvcjogdGhpcy5pbmplY3Rvcn0pLndpdGhEaXNhYmxlZCgpO1xuXG4gICAgICAgICAgICBkZXNjLndpdGhEZXRhaWxzRGVzY3JpcHRvcihkZXRhaWxzRGVzY3JpcHRvciBhcyBFZGl0b3JEZXNjcmlwdG9yPE1uZ1JldkVudGl0eT4pOyAvLyBNbmdSZXZFbnRpdHkgaXMgZXh0ZW5kZWQgYnkgTW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG8sIHNvIG5vIHJlYWwgaGFybSBoZXJlXG4gICAgICAgICAgICBkZXNjLnRhYmxlLndpdGhGaWx0ZXJEaXNwbGF5KFRhYmxlRmlsdGVyRGlzcGxheUVudW0uUm93KTtcblxuICAgICAgICAgICAgcmV0dXJuIGRlc2M7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9yKE1uZ1JldkVudGl0eSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxldmlld0RhdGFQcm92aWRlcigpOiBJVGFibGV2aWV3RGF0YVByb3ZpZGVyPE1uZ1JldkVudGl0eSwgdW5rbm93bj4ge1xuICAgICAgICBpZiAodGhpcy5yZXZNb2RlbCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEYXRhUHJvdmlkZXIoTW5nUmV2RW50aXR5KS53aXRoR2V0QWxsKHFwID0+XG4gICAgICAgICAgICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5yZXZpc2lzb25zQXBpU2VydmljZS5nZXRSZXZpc2lvbkNvdW50KHFwKSwgdGhpcy5yZXZpc2lzb25zQXBpU2VydmljZS5nZXRSZXZpc2lvbkxpc3QocXApXSkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKChbY291bnQsIHZhbHVlc10pID0+IE1lZGl1c1F1ZXJ5UmVzdWx0LmZyb21BcnJheSh2YWx1ZXMsIGNvdW50KSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVyKE1uZ1JldkVudGl0eSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUFjdGlvbkRlc2NyaXB0b3JzKCk6IEFycmF5PEFjdGlvbkRlc2NyaXB0b3I8TW5nUmV2RW50aXR5Pj4ge1xuICAgICAgICBjb25zdCBkZXRhaWxzQWN0aW9uID0gbmV3IEFjdGlvbkVkaXRvckRldGFpbHNEZXNjcmlwdG9yKHRoaXMuZGVzY3JpcHRvci5kZXRhaWxzRWRpdG9yKS53aXRoRmV0Y2hGdW5jdGlvbihjdHggPT5cbiAgICAgICAgICAgIGN0eC5wYXJhbWV0ZXJzLml0ZW1JZFxuICAgICAgICAgICAgICAgID8gdGhpcy5yZXZpc2lzb25zQXBpU2VydmljZS5nZXRBbGxDaGFuZ2VzRm9yUmV2aXNpb24oY3R4LnBhcmFtZXRlcnMuaXRlbUlkKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIG1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aENoYW5nZXMgPSBuZXcgTW5nUmV2RW50aXR5RGV0YWlsZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aENoYW5nZXMucmV2ID0gY3R4LnBhcmFtZXRlcnMuaXRlbUlkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoQ2hhbmdlcy5yZXZFbnRpdHkgPSBpdGVtLnJldkVudGl0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aENoYW5nZXMuZW50aXR5TmFtZUNoYW5nZXNNYXAgPSBpdGVtLmVudGl0eU5hbWVDaGFuZ2VzTWFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmV2RW50aXR5V2l0aENoYW5nZXM7XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA6IHRocm93RXJyb3IoKCkgPT4gbmV3IE1uZ0ludGVybmFsRXJyb3IoJ05vIHJldmlzaW9uIGlkIHByb3ZpZGVkIGZvciBmZXRjaCBmdW5jdGlvbicpKVxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gW2RldGFpbHNBY3Rpb25dO1xuICAgIH1cbn1cbiIsIjxtbmctdGFibGV2aWV3LXJvdXRlICpuZ0lmPVwic2hvd1RhYmxldmlldygpXCIgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvclwiIFtkYXRhUHJvdmlkZXJdPVwiZGF0YVByb3ZpZGVyXCIgW2FjdGlvbnNdPVwiYWN0aW9uc1wiPjwvbW5nLXRhYmxldmlldy1yb3V0ZT5cbiJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaXQtcmV2aXNpb25zLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2VzL3JldmlzaW9ucy9hdWRpdC1yZXZpc2lvbnMucGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnZXMvcmV2aXNpb25zL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUEwQixNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9ILE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ25DLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxPQUFPLEVBQ0gsMkJBQTJCLEVBRTNCLDZCQUE2QixFQUM3QixnQkFBZ0IsRUFHaEIsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQiwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsbUJBQW1CLEVBRW5CLHVCQUF1QixFQUN2QixlQUFlLEVBQ2xCLE1BQU0sd0JBQXdCLENBQUM7QUFHaEMsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdkYsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM5RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sMkRBQTJELENBQUM7O0FBU3RHLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSwyQkFBeUM7SUFQN0Y7O1FBUVksZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBRzVELGtCQUFhLEdBQTRCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztLQXdFakU7SUF0RVksUUFBUTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDNUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFO2dCQUNWLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ25ELENBQUM7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVMseUJBQXlCO1FBQy9CLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVqSCxNQUFNLEtBQUssR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVO2dCQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMzRSxJQUFJLFVBQVU7Z0JBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXZELE1BQU0sSUFBSSxHQUFHLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVsRCxNQUFNLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQywwQkFBMEIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuSixpQkFBaUIsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxDQUFDO1lBRXhFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUU7Z0JBQzFCLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3BFLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBNkIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN6RztZQUVELGlCQUFpQjtpQkFDWixRQUFRLENBQUMsc0JBQXNCLENBQUM7aUJBQ2hDLGlCQUFpQixDQUFDLDJCQUEyQixFQUFFO2dCQUM1QyxhQUFhLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDakMsTUFBTSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUM7YUFDcEMsQ0FBQztpQkFDRCxZQUFZLEVBQUUsQ0FBQztZQUVwQixJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQXVELENBQUMsQ0FBQyxDQUFDLCtFQUErRTtZQUNwSyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXpELE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxPQUFPLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRVMsMkJBQTJCO1FBQ2pDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLE9BQU8scUJBQXFCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUNqRSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMvRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUN2RSxDQUNKLENBQUM7U0FDTDtRQUNELE9BQU8scUJBQXFCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFa0IsdUJBQXVCO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLDZCQUE2QixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQzlHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyx3QkFBd0IsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDM0YsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1AsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7WUFDeEQsb0JBQW9CLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO1lBQ2pELG9CQUFvQixDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2hELG9CQUFvQixDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztZQUN0RSxPQUFPLG9CQUFvQixDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUNMLENBQ0osQ0FBQztRQUVGLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMzQixDQUFDOzhHQTlFUSw4QkFBOEI7a0dBQTlCLDhCQUE4QiwyR0MzQzNDLGlLQUdBLDRDRHFDK0YsMEJBQTBCOzsyRkFHNUcsOEJBQThCO2tCQVAxQyxTQUFTO2lDQUNNLElBQUksWUFDTiwwQkFBMEIsV0FFM0IsQ0FBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSwwQkFBMEIsQ0FBQyxtQkFDckcsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXN5bmNQaXBlLCBKc29uUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRGVzdHJveVJlZiwgSW5qZWN0b3IsIE9uSW5pdCwgV3JpdGFibGVTaWduYWwsIGluamVjdCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1JvdXRlck91dGxldH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtjb21iaW5lTGF0ZXN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gICAgQU1uZ1RhYmxldmlld1JvdXRlQ29tcG9uZW50LFxuICAgIEFjdGlvbkRlc2NyaXB0b3JJbnN0LFxuICAgIEFjdGlvbkVkaXRvckRldGFpbHNEZXNjcmlwdG9yLFxuICAgIEVkaXRvckRlc2NyaXB0b3IsXG4gICAgRWRpdG9yRGVzY3JpcHRvckluc3QsXG4gICAgSVRhYmxldmlld0RhdGFQcm92aWRlcixcbiAgICBNZWRpdXNRdWVyeVJlc3VsdCxcbiAgICBNbmdUYWJsZXZpZXdDb21wb25lbnQsXG4gICAgTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnQsXG4gICAgTW9kZWxEZXNjcmlwdG9yLFxuICAgIFRhYmxlRmlsdGVyRGlzcGxheUVudW0sXG4gICAgVGFibGV2aWV3RGF0YVByb3ZpZGVyLFxuICAgIFRhYmxldmlld0Rlc2NyaXB0b3IsXG4gICAgVGFibGV2aWV3RGVzY3JpcHRvckluc3QsXG4gICAgVGFibGV2aWV3RWRpdG9yVHlwZUVudW0sXG4gICAgaXRlbUlkVG9EZWZpbmVkXG59IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0d1aUVudGl0eU1vZGVsRHRvfSBmcm9tICcuLi8uLi8uLi9hcGkvbW9kZWxzL2d1aUVudGl0eU1vZGVsJztcbmltcG9ydCB7TW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG99IGZyb20gJy4uLy4uLy4uL2FwaS9tb2RlbHMvcmV2RW50aXR5V2l0aENoYW5nZXNEdG8nO1xuaW1wb3J0IHtNbmdBdWRpdFJldmlzaW9uc0FwaVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC1yZXZpc2lvbnMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHtNbmdBdWRpdFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9hdWRpdC5zZXJ2aWNlJztcbmltcG9ydCB7TW5nUmV2RW50aXR5RGV0YWlsZWR9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZXYtZW50aXR5LWRldGFpbGVkLm1vZGVsJztcbmltcG9ydCB7TW5nUmV2RW50aXR5fSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmV2LWVudGl0eS5tb2RlbCc7XG5pbXBvcnQge0F1ZGl0VXRpbH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYXVkaXQudXRpbCc7XG5pbXBvcnQge0VudGl0eUNoYW5nZXNGaWVsZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZW50aXR5LWNoYW5nZXMtZmllbGQvZW50aXR5LWNoYW5nZXMtZmllbGQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1hdWRpdC1yZXZpc2lvbnMtcGFnZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2F1ZGl0LXJldmlzaW9ucy5wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBpbXBvcnRzOiBbTW5nVGFibGV2aWV3Q29tcG9uZW50LCBBc3luY1BpcGUsIE1uZ1RhYmxldmlld0NvbXBvbmVudCwgUm91dGVyT3V0bGV0LCBKc29uUGlwZSwgTW5nVGFibGV2aWV3Um91dGVDb21wb25lbnRdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE1uZ0F1ZGl0UmV2aXNpb25zUGFnZUNvbXBvbmVudCBleHRlbmRzIEFNbmdUYWJsZXZpZXdSb3V0ZUNvbXBvbmVudDxNbmdSZXZFbnRpdHk+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgcHJpdmF0ZSBhdWRpdFNlcnZpY2UgPSBpbmplY3QoTW5nQXVkaXRTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJldmlzaXNvbnNBcGlTZXJ2aWNlID0gaW5qZWN0KE1uZ0F1ZGl0UmV2aXNpb25zQXBpU2VydmljZSk7XG5cbiAgICBwcml2YXRlIHJldk1vZGVsPzogTW5nR3VpRW50aXR5TW9kZWxEdG87XG4gICAgcHVibGljIHNob3dUYWJsZXZpZXc6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmF1ZGl0U2VydmljZS5yZXZNb2RlbCQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgIG5leHQ6IG1vZGVsID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJldk1vZGVsID0gbW9kZWw7XG4gICAgICAgICAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2hvd1RhYmxldmlldy5zZXQodHJ1ZSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVGFibGV2aWV3RGVzY3JpcHRvcigpOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxNbmdSZXZFbnRpdHk+IHtcbiAgICAgICAgaWYgKHRoaXMucmV2TW9kZWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGlkUHJvcGVydHkgPSB0aGlzLnJldk1vZGVsLnByb3BlcnRpZXM/LmZpbHRlcihwcm9wID0+IHByb3AuaXNJZCkubWFwKHByb3AgPT4gcHJvcC5yZXNvbHZlZFByb3BlcnR5TmFtZSlbMF07XG5cbiAgICAgICAgICAgIGNvbnN0IG1vZGVsID0gTW9kZWxEZXNjcmlwdG9yLmZyb21DbGFzcyhNbmdSZXZFbnRpdHkpO1xuICAgICAgICAgICAgaWYgKHRoaXMucmV2TW9kZWwuZW50aXR5TmFtZSkgbW9kZWwud2l0aEkxOG5CYXNlKHRoaXMucmV2TW9kZWwuZW50aXR5TmFtZSk7XG4gICAgICAgICAgICBpZiAoaWRQcm9wZXJ0eSkgbW9kZWwud2l0aElkUHJvcGVydHlVbnNhZmUoaWRQcm9wZXJ0eSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGRlc2MgPSBUYWJsZXZpZXdEZXNjcmlwdG9yLmZyb21Nb2RlbChtb2RlbCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGRldGFpbHNEZXNjcmlwdG9yID0gRWRpdG9yRGVzY3JpcHRvci5mcm9tQ2xhc3MoTW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG8sIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIFRhYmxldmlld0VkaXRvclR5cGVFbnVtLkRldGFpbHMpO1xuICAgICAgICAgICAgZGV0YWlsc0Rlc2NyaXB0b3IubW9kZWwud2l0aElkUHJvcGVydHlVbnNhZmUoJ3JldkVudGl0eS4nICsgaWRQcm9wZXJ0eSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLnJldk1vZGVsLnByb3BlcnRpZXMpIHtcbiAgICAgICAgICAgICAgICBBdWRpdFV0aWwuYWRkQ29sdW1uc0Zyb21Nb2RlbChkZXNjLnRhYmxlLCB0aGlzLnJldk1vZGVsLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgICAgIEF1ZGl0VXRpbC5hZGRGaWVsZHNGcm9tTW9kZWw8TW5nUmV2RW50aXR5V2l0aENoYW5nZXNEdG8+KGRldGFpbHNEZXNjcmlwdG9yLCB0aGlzLnJldk1vZGVsLnByb3BlcnRpZXMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkZXRhaWxzRGVzY3JpcHRvclxuICAgICAgICAgICAgICAgIC5hZGRGaWVsZCgnZW50aXR5TmFtZUNoYW5nZXNNYXAnKVxuICAgICAgICAgICAgICAgIC5hc0N1c3RvbUNvbXBvbmVudChFbnRpdHlDaGFuZ2VzRmllbGRDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGRXcmFwcGVyczogWydmaWVsZC1uby1sYWJlbCddLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dHM6IHtpbmplY3RvcjogdGhpcy5pbmplY3Rvcn1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC53aXRoRGlzYWJsZWQoKTtcblxuICAgICAgICAgICAgZGVzYy53aXRoRGV0YWlsc0Rlc2NyaXB0b3IoZGV0YWlsc0Rlc2NyaXB0b3IgYXMgRWRpdG9yRGVzY3JpcHRvckluc3Q8TW5nUmV2RW50aXR5Pik7IC8vIE1uZ1JldkVudGl0eSBpcyBleHRlbmRlZCBieSBNbmdSZXZFbnRpdHlXaXRoQ2hhbmdlc0R0bywgc28gbm8gcmVhbCBoYXJtIGhlcmVcbiAgICAgICAgICAgIGRlc2MudGFibGUud2l0aEZpbHRlckRpc3BsYXkoVGFibGVGaWx0ZXJEaXNwbGF5RW51bS5Sb3cpO1xuXG4gICAgICAgICAgICByZXR1cm4gZGVzYztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gVGFibGV2aWV3RGVzY3JpcHRvci5mcm9tQ2xhc3MoTW5nUmV2RW50aXR5KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVGFibGV2aWV3RGF0YVByb3ZpZGVyKCk6IElUYWJsZXZpZXdEYXRhUHJvdmlkZXI8TW5nUmV2RW50aXR5PiB7XG4gICAgICAgIGlmICh0aGlzLnJldk1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm4gVGFibGV2aWV3RGF0YVByb3ZpZGVyLmZyb21DbGFzcyhNbmdSZXZFbnRpdHkpLndpdGhHZXRBbGwocXAgPT5cbiAgICAgICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnJldmlzaXNvbnNBcGlTZXJ2aWNlLmdldFJldmlzaW9uQ291bnQocXApLCB0aGlzLnJldmlzaXNvbnNBcGlTZXJ2aWNlLmdldFJldmlzaW9uTGlzdChxcCldKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAoKFtjb3VudCwgdmFsdWVzXSkgPT4gTWVkaXVzUXVlcnlSZXN1bHQuZnJvbUFycmF5KHZhbHVlcywgY291bnQpKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFRhYmxldmlld0RhdGFQcm92aWRlci5mcm9tQ2xhc3MoTW5nUmV2RW50aXR5KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlQWN0aW9uRGVzY3JpcHRvcnMoKTogQXJyYXk8QWN0aW9uRGVzY3JpcHRvckluc3Q8TW5nUmV2RW50aXR5Pj4ge1xuICAgICAgICBjb25zdCBkZXRhaWxzQWN0aW9uID0gQWN0aW9uRWRpdG9yRGV0YWlsc0Rlc2NyaXB0b3IuY3JlYXRlKHRoaXMuZGVzY3JpcHRvci5kZXRhaWxzRWRpdG9yKS53aXRoRmV0Y2hGdW5jdGlvbihjdHggPT5cbiAgICAgICAgICAgIHRoaXMucmV2aXNpc29uc0FwaVNlcnZpY2UuZ2V0QWxsQ2hhbmdlc0ZvclJldmlzaW9uKGl0ZW1JZFRvRGVmaW5lZChjdHgucGFyYW1ldGVycy5pdGVtSWQpKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmV2RW50aXR5V2l0aENoYW5nZXMgPSBuZXcgTW5nUmV2RW50aXR5RGV0YWlsZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aENoYW5nZXMucmV2ID0gY3R4LnBhcmFtZXRlcnMuaXRlbUlkO1xuICAgICAgICAgICAgICAgICAgICByZXZFbnRpdHlXaXRoQ2hhbmdlcy5yZXZFbnRpdHkgPSBpdGVtLnJldkVudGl0eTtcbiAgICAgICAgICAgICAgICAgICAgcmV2RW50aXR5V2l0aENoYW5nZXMuZW50aXR5TmFtZUNoYW5nZXNNYXAgPSBpdGVtLmVudGl0eU5hbWVDaGFuZ2VzTWFwO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmV2RW50aXR5V2l0aENoYW5nZXM7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gW2RldGFpbHNBY3Rpb25dO1xuICAgIH1cbn1cbiIsIkBpZiAoc2hvd1RhYmxldmlldygpKSB7XG4gICAgPG1uZy10YWJsZXZpZXctcm91dGUgW2Rlc2NyaXB0b3JdPVwiZGVzY3JpcHRvclwiIFtkYXRhUHJvdmlkZXJdPVwiZGF0YVByb3ZpZGVyXCIgW2FjdGlvbnNdPVwiYWN0aW9uc1wiPjwvbW5nLXRhYmxldmlldy1yb3V0ZT5cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvY29uZmlnLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1uZ0F1ZGl0TW9kdWxlQ29uZmlnIHtcbiAgICBhcGlCYXNlUGF0aENvbmZpZ0tleTogc3RyaW5nO1xuICAgIGFwaVNlcnZpY2VCYXNlUGF0aD86IHN0cmluZztcbiAgICByb290UGFnZUNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgICByZXZpc2lvbnNQYWdlQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAgIGVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQ/OiBUeXBlPGFueT47XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvY29uZmlnLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1uZ0F1ZGl0TW9kdWxlQ29uZmlnIHtcbiAgICBhcGlCYXNlUGF0aENvbmZpZ0tleTogc3RyaW5nO1xuICAgIGFwaVNlcnZpY2VCYXNlUGF0aD86IHN0cmluZztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHJvb3RQYWdlQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcmV2aXNpb25zUGFnZUNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGVudGl0eVJldmlzaW9uc1BhZ2VDb21wb25lbnQ/OiBUeXBlPGFueT47XG59XG4iXX0=
@@ -1,8 +1,9 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { TypeName } from '@mediusinc/mng-commons';
3
- export let MngEntityRevisionChangeState = class MngEntityRevisionChangeState {
3
+ let MngEntityRevisionChangeState = class MngEntityRevisionChangeState {
4
4
  };
5
5
  MngEntityRevisionChangeState = __decorate([
6
6
  TypeName('MngEntityRevisionChangeState')
7
7
  ], MngEntityRevisionChangeState);
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUt6QyxXQUFNLDRCQUE0QixHQUFsQyxNQUFNLDRCQUE0QjtDQUl4QyxDQUFBO0FBSlksNEJBQTRCO0lBRHhDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQztHQUM1Qiw0QkFBNEIsQ0FJeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdSZXZpc2lvblR5cGVEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvcmV2aXNpb25UeXBlJztcblxuQFR5cGVOYW1lKCdNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlJylcbmV4cG9ydCBjbGFzcyBNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlIHtcbiAgICByZXZUeXBlPzogTW5nUmV2aXNpb25UeXBlRHRvO1xuICAgIGNvbG9yPzogJ2dyZWVuJyB8ICdyZWQnO1xuICAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG4iXX0=
8
+ export { MngEntityRevisionChangeState };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2VudGl0eS1yZXZpc2lvbi1jaGFuZ2Utc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUt6QyxJQUFNLDRCQUE0QixHQUFsQyxNQUFNLDRCQUE0QjtDQUl4QyxDQUFBO0FBSlksNEJBQTRCO0lBRHhDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQztHQUM1Qiw0QkFBNEIsQ0FJeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdSZXZpc2lvblR5cGVEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvcmV2aXNpb25UeXBlJztcblxuQFR5cGVOYW1lKCdNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlJylcbmV4cG9ydCBjbGFzcyBNbmdFbnRpdHlSZXZpc2lvbkNoYW5nZVN0YXRlIHtcbiAgICByZXZUeXBlPzogTW5nUmV2aXNpb25UeXBlRHRvO1xuICAgIGNvbG9yPzogJ2dyZWVuJyB8ICdyZWQnO1xuICAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG4iXX0=
@@ -1,8 +1,9 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { TypeName } from '@mediusinc/mng-commons';
3
- export let MngEntityRevisionChanges = class MngEntityRevisionChanges {
3
+ let MngEntityRevisionChanges = class MngEntityRevisionChanges {
4
4
  };
5
5
  MngEntityRevisionChanges = __decorate([
6
6
  TypeName('MngEntityChanges')
7
7
  ], MngEntityRevisionChanges);
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBS3pDLFdBQU0sd0JBQXdCLEdBQTlCLE1BQU0sd0JBQXdCO0NBR3BDLENBQUE7QUFIWSx3QkFBd0I7SUFEcEMsUUFBUSxDQUFDLGtCQUFrQixDQUFDO0dBQ2hCLHdCQUF3QixDQUdwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZU5hbWV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0VudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGV9IGZyb20gJy4vZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nRW50aXR5Q2hhbmdlcycpXG5leHBvcnQgY2xhc3MgTW5nRW50aXR5UmV2aXNpb25DaGFuZ2VzIHtcbiAgICBlbnRpdHlUeXBlPzogc3RyaW5nO1xuICAgIGl0ZW1zPzogTW5nRW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZVtdO1xufVxuIl19
8
+ export { MngEntityRevisionChanges };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXJldmlzaW9uLWNoYW5nZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9lbnRpdHktcmV2aXNpb24tY2hhbmdlcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBS3pDLElBQU0sd0JBQXdCLEdBQTlCLE1BQU0sd0JBQXdCO0NBR3BDLENBQUE7QUFIWSx3QkFBd0I7SUFEcEMsUUFBUSxDQUFDLGtCQUFrQixDQUFDO0dBQ2hCLHdCQUF3QixDQUdwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZU5hbWV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0VudGl0eVJldmlzaW9uQ2hhbmdlU3RhdGV9IGZyb20gJy4vZW50aXR5LXJldmlzaW9uLWNoYW5nZS1zdGF0ZS5tb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nRW50aXR5Q2hhbmdlcycpXG5leHBvcnQgY2xhc3MgTW5nRW50aXR5UmV2aXNpb25DaGFuZ2VzIHtcbiAgICBlbnRpdHlUeXBlPzogc3RyaW5nO1xuICAgIGl0ZW1zPzogTW5nRW50aXR5UmV2aXNpb25DaGFuZ2VTdGF0ZVtdO1xufVxuIl19
@@ -1,9 +1,10 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { TypeName } from '@mediusinc/mng-commons';
3
3
  import { MngGuiEntityModelDto } from '../api/models/guiEntityModel';
4
- export let MngGuiEntityModelWithI18n = class MngGuiEntityModelWithI18n extends MngGuiEntityModelDto {
4
+ let MngGuiEntityModelWithI18n = class MngGuiEntityModelWithI18n extends MngGuiEntityModelDto {
5
5
  };
6
6
  MngGuiEntityModelWithI18n = __decorate([
7
7
  TypeName('MngGuiEntityModelWithI18n')
8
8
  ], MngGuiEntityModelWithI18n);
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2d1aUVudGl0eU1vZGVsV2l0aEkxOG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUczRCxXQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUEwQixTQUFRLG9CQUFvQjtDQUVsRSxDQUFBO0FBRlkseUJBQXlCO0lBRHJDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQztHQUN6Qix5QkFBeUIsQ0FFckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nR3VpRW50aXR5TW9kZWxXaXRoSTE4bicpXG5leHBvcnQgY2xhc3MgTW5nR3VpRW50aXR5TW9kZWxXaXRoSTE4biBleHRlbmRzIE1uZ0d1aUVudGl0eU1vZGVsRHRvIHtcbiAgICBlbnRpdHlOYW1lSTE4bj86IHN0cmluZztcbn1cbiJdfQ==
9
+ export { MngGuiEntityModelWithI18n };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpRW50aXR5TW9kZWxXaXRoSTE4bi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2d1aUVudGl0eU1vZGVsV2l0aEkxOG4ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUczRCxJQUFNLHlCQUF5QixHQUEvQixNQUFNLHlCQUEwQixTQUFRLG9CQUFvQjtDQUVsRSxDQUFBO0FBRlkseUJBQXlCO0lBRHJDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQztHQUN6Qix5QkFBeUIsQ0FFckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdHdWlFbnRpdHlNb2RlbER0b30gZnJvbSAnLi4vYXBpL21vZGVscy9ndWlFbnRpdHlNb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nR3VpRW50aXR5TW9kZWxXaXRoSTE4bicpXG5leHBvcnQgY2xhc3MgTW5nR3VpRW50aXR5TW9kZWxXaXRoSTE4biBleHRlbmRzIE1uZ0d1aUVudGl0eU1vZGVsRHRvIHtcbiAgICBlbnRpdHlOYW1lSTE4bj86IHN0cmluZztcbn1cbiJdfQ==
@@ -1,9 +1,10 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { TypeName } from '@mediusinc/mng-commons';
3
3
  import { MngRevEntity } from './rev-entity.model';
4
- export let MngRevEntityDetailed = class MngRevEntityDetailed extends MngRevEntity {
4
+ let MngRevEntityDetailed = class MngRevEntityDetailed extends MngRevEntity {
5
5
  };
6
6
  MngRevEntityDetailed = __decorate([
7
7
  TypeName('MngRevEntityDetailed')
8
8
  ], MngRevEntityDetailed);
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS1kZXRhaWxlZC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHktZGV0YWlsZWQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdoRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFHekMsV0FBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBcUIsU0FBUSxZQUFZO0NBR3JELENBQUE7QUFIWSxvQkFBb0I7SUFEaEMsUUFBUSxDQUFDLHNCQUFzQixDQUFDO0dBQ3BCLG9CQUFvQixDQUdoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZU5hbWV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0VudGl0eUNoYW5nZUR0b30gZnJvbSAnLi4vYXBpL21vZGVscy9lbnRpdHlDaGFuZ2UnO1xuaW1wb3J0IHtNbmdSZXZFbnRpdHl9IGZyb20gJy4vcmV2LWVudGl0eS5tb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nUmV2RW50aXR5RGV0YWlsZWQnKVxuZXhwb3J0IGNsYXNzIE1uZ1JldkVudGl0eURldGFpbGVkIGV4dGVuZHMgTW5nUmV2RW50aXR5IHtcbiAgICByZXZFbnRpdHk/OiB7W2tleTogc3RyaW5nXTogdW5rbm93bn07XG4gICAgZW50aXR5TmFtZUNoYW5nZXNNYXA/OiB7W2tleTogc3RyaW5nXTogQXJyYXk8TW5nRW50aXR5Q2hhbmdlRHRvPn07XG59XG4iXX0=
9
+ export { MngRevEntityDetailed };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS1kZXRhaWxlZC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHktZGV0YWlsZWQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdoRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFHekMsSUFBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBcUIsU0FBUSxZQUFZO0NBR3JELENBQUE7QUFIWSxvQkFBb0I7SUFEaEMsUUFBUSxDQUFDLHNCQUFzQixDQUFDO0dBQ3BCLG9CQUFvQixDQUdoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZU5hbWV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ0VudGl0eUNoYW5nZUR0b30gZnJvbSAnLi4vYXBpL21vZGVscy9lbnRpdHlDaGFuZ2UnO1xuaW1wb3J0IHtNbmdSZXZFbnRpdHl9IGZyb20gJy4vcmV2LWVudGl0eS5tb2RlbCc7XG5cbkBUeXBlTmFtZSgnTW5nUmV2RW50aXR5RGV0YWlsZWQnKVxuZXhwb3J0IGNsYXNzIE1uZ1JldkVudGl0eURldGFpbGVkIGV4dGVuZHMgTW5nUmV2RW50aXR5IHtcbiAgICByZXZFbnRpdHk/OiB7W2tleTogc3RyaW5nXTogdW5rbm93bn07XG4gICAgZW50aXR5TmFtZUNoYW5nZXNNYXA/OiB7W2tleTogc3RyaW5nXTogQXJyYXk8TW5nRW50aXR5Q2hhbmdlRHRvPn07XG59XG4iXX0=
@@ -1,8 +1,9 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { TypeName } from '@mediusinc/mng-commons';
3
- export let MngRevEntity = class MngRevEntity {
3
+ let MngRevEntity = class MngRevEntity {
4
4
  };
5
5
  MngRevEntity = __decorate([
6
6
  TypeName('MngRevEntity')
7
7
  ], MngRevEntity);
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBUyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdqRCxXQUFNLFlBQVksR0FBbEIsTUFBTSxZQUFZO0NBSXhCLENBQUE7QUFKWSxZQUFZO0lBRHhCLFFBQVEsQ0FBQyxjQUFjLENBQUM7R0FDWixZQUFZLENBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJZFR5cGUsIFR5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuQFR5cGVOYW1lKCdNbmdSZXZFbnRpdHknKVxuZXhwb3J0IGNsYXNzIE1uZ1JldkVudGl0eSB7XG4gICAgcmV2PzogSWRUeXBlOyAvLyB1c3VhbGx5IGEgbnVtYmVyXG4gICAgcmV2VXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgdGltZXN0YW1wPzogRGF0ZTtcbn1cbiJdfQ==
8
+ export { MngRevEntity };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2LWVudGl0eS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL3Jldi1lbnRpdHkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBUyxRQUFRLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUdqRCxJQUFNLFlBQVksR0FBbEIsTUFBTSxZQUFZO0NBSXhCLENBQUE7QUFKWSxZQUFZO0lBRHhCLFFBQVEsQ0FBQyxjQUFjLENBQUM7R0FDWixZQUFZLENBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJZFR5cGUsIFR5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuQFR5cGVOYW1lKCdNbmdSZXZFbnRpdHknKVxuZXhwb3J0IGNsYXNzIE1uZ1JldkVudGl0eSB7XG4gICAgcmV2PzogSWRUeXBlOyAvLyB1c3VhbGx5IGEgbnVtYmVyXG4gICAgcmV2VXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgdGltZXN0YW1wPzogRGF0ZTtcbn1cbiJdfQ==
@@ -1,10 +1,11 @@
1
1
  import { __decorate } from "tslib";
2
- import { ObjectSerializer, TypeName } from '@mediusinc/mng-commons';
2
+ import { TypeName, TypeRegistry } from '@mediusinc/mng-commons';
3
3
  import { MngRevEntityWithStateDto } from '../api/models/revEntityWithStateDto';
4
- export let MngRevEntityWithId = class MngRevEntityWithId extends MngRevEntityWithStateDto {
4
+ let MngRevEntityWithId = class MngRevEntityWithId extends MngRevEntityWithStateDto {
5
5
  };
6
6
  MngRevEntityWithId = __decorate([
7
7
  TypeName('MngRevEntityWithId')
8
8
  ], MngRevEntityWithId);
9
- ObjectSerializer.get().registerType(MngRevEntityWithId);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2RW50aXR5V2l0aElkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFbEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFHdEUsV0FBTSxrQkFBa0IsR0FBeEIsTUFBTSxrQkFBbUIsU0FBUSx3QkFBd0I7Q0FFL0QsQ0FBQTtBQUZZLGtCQUFrQjtJQUQ5QixRQUFRLENBQUMsb0JBQW9CLENBQUM7R0FDbEIsa0JBQWtCLENBRTlCO0FBRUQsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09iamVjdFNlcmlhbGl6ZXIsIFR5cGVOYW1lfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zJztcblxuaW1wb3J0IHtNbmdSZXZFbnRpdHlXaXRoU3RhdGVEdG99IGZyb20gJy4uL2FwaS9tb2RlbHMvcmV2RW50aXR5V2l0aFN0YXRlRHRvJztcblxuQFR5cGVOYW1lKCdNbmdSZXZFbnRpdHlXaXRoSWQnKVxuZXhwb3J0IGNsYXNzIE1uZ1JldkVudGl0eVdpdGhJZCBleHRlbmRzIE1uZ1JldkVudGl0eVdpdGhTdGF0ZUR0byB7XG4gICAgbWVyZ2VkSWQ/OiBzdHJpbmc7XG59XG5cbk9iamVjdFNlcmlhbGl6ZXIuZ2V0KCkucmVnaXN0ZXJUeXBlKE1uZ1JldkVudGl0eVdpdGhJZCk7XG4iXX0=
9
+ export { MngRevEntityWithId };
10
+ TypeRegistry.get().registerType(MngRevEntityWithId);
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2RW50aXR5V2l0aElkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbHMvcmV2RW50aXR5V2l0aElkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFlBQVksRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBR3RFLElBQU0sa0JBQWtCLEdBQXhCLE1BQU0sa0JBQW1CLFNBQVEsd0JBQXdCO0NBRS9ELENBQUE7QUFGWSxrQkFBa0I7SUFEOUIsUUFBUSxDQUFDLG9CQUFvQixDQUFDO0dBQ2xCLGtCQUFrQixDQUU5Qjs7QUFFRCxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGVOYW1lLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMnO1xuXG5pbXBvcnQge01uZ1JldkVudGl0eVdpdGhTdGF0ZUR0b30gZnJvbSAnLi4vYXBpL21vZGVscy9yZXZFbnRpdHlXaXRoU3RhdGVEdG8nO1xuXG5AVHlwZU5hbWUoJ01uZ1JldkVudGl0eVdpdGhJZCcpXG5leHBvcnQgY2xhc3MgTW5nUmV2RW50aXR5V2l0aElkIGV4dGVuZHMgTW5nUmV2RW50aXR5V2l0aFN0YXRlRHRvIHtcbiAgICBtZXJnZWRJZD86IHN0cmluZztcbn1cblxuVHlwZVJlZ2lzdHJ5LmdldCgpLnJlZ2lzdGVyVHlwZShNbmdSZXZFbnRpdHlXaXRoSWQpO1xuIl19