@netgrif/components-core 6.2.0-rc.9 → 6.2.2
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/commons/schema.d.ts +3 -0
- package/esm2020/assets/i18n/de.json +18 -8
- package/esm2020/assets/i18n/en.json +11 -1
- package/esm2020/assets/i18n/sk.json +11 -1
- package/esm2020/commons/schema.mjs +1 -1
- package/esm2020/commons/view-class-info.mjs +9 -1
- package/esm2020/lib/admin/public-api.mjs +2 -2
- package/esm2020/lib/admin/role-assignment-ldap-group/abstract-ldap-group-role-assignment.component.mjs +88 -0
- package/esm2020/lib/authentication/services/methods/basic-authentication/basic-authentication.service.mjs +10 -2
- package/esm2020/lib/authorization/permission/access.service.mjs +2 -2
- package/esm2020/lib/authorization/role/role-guard.service.mjs +36 -11
- package/esm2020/lib/data-fields/button-field/abstract-button-field.component.mjs +2 -12
- package/esm2020/lib/data-fields/button-field/models/button-field.mjs +2 -18
- package/esm2020/lib/data-fields/enumeration-field/models/dynamic-enumeration-field.mjs +4 -5
- package/esm2020/lib/data-fields/enumeration-field/models/enumeration-field.mjs +2 -22
- package/esm2020/lib/data-fields/file-field/abstract-file-field.component.mjs +35 -15
- package/esm2020/lib/data-fields/file-list-field/abstract-file-list-field.component.mjs +38 -15
- package/esm2020/lib/data-fields/i18n-field/abstract-i18n-field.component.mjs +1 -4
- package/esm2020/lib/data-fields/models/abstract-data-field.mjs +9 -1
- package/esm2020/lib/data-fields/multichoice-field/models/multichoice-field.mjs +2 -17
- package/esm2020/lib/data-fields/multichoice-field/multichoice-autocomplete-field/abstract-multichoice-autocomplete-field-component.component.mjs +79 -0
- package/esm2020/lib/data-fields/number-field/currency-number-field/abstract-currency-number-field.component.mjs +3 -2
- package/esm2020/lib/data-fields/public-api.mjs +4 -1
- package/esm2020/lib/data-fields/text-field/models/text-area-field.mjs +4 -5
- package/esm2020/lib/data-fields/text-field/models/text-field.mjs +2 -14
- package/esm2020/lib/data-fields/user-list-field/abstract-user-list-field.component.mjs +75 -0
- package/esm2020/lib/data-fields/user-list-field/models/user-list-field.mjs +11 -0
- package/esm2020/lib/data-fields/user-list-field/models/user-list-value.mjs +36 -0
- package/esm2020/lib/dialog/components/alert-dialog/alert-dialog.component.mjs +4 -4
- package/esm2020/lib/dialog/components/confirm-dialog/confirm-dialog.component.mjs +4 -4
- package/esm2020/lib/dialog/components/prompt-dialog/prompt-dialog.component.mjs +4 -4
- package/esm2020/lib/dialog/models/abstract-dialog.component.mjs +29 -0
- package/esm2020/lib/header/abstract-header-service.mjs +25 -9
- package/esm2020/lib/header/abstract-header.component.mjs +7 -5
- package/esm2020/lib/header/case-header/case-header.service.mjs +2 -2
- package/esm2020/lib/header/services/overflow.service.mjs +2 -2
- package/esm2020/lib/header/task-header/task-header.service.mjs +7 -4
- package/esm2020/lib/header/workflow-header/workflow-header.service.mjs +11 -8
- package/esm2020/lib/navigation/breadcrumbs/abstract-breadcrumbs.component.mjs +69 -0
- package/esm2020/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.mjs +7 -4
- package/esm2020/lib/navigation/public-api.mjs +2 -1
- package/esm2020/lib/navigation/service/uri.service.mjs +5 -1
- package/esm2020/lib/panel/abstract/panel-with-header-binding.mjs +17 -5
- package/esm2020/lib/panel/abstract/panel-with-immediate-data.mjs +52 -22
- package/esm2020/lib/panel/abstract-panel.component.mjs +16 -4
- package/esm2020/lib/panel/case-panel/abstract-case-panel.component.mjs +13 -11
- package/esm2020/lib/panel/configuration/config-params.mjs +5 -0
- package/esm2020/lib/panel/public-api.mjs +3 -1
- package/esm2020/lib/panel/task-panel/abstract-task-panel.component.mjs +18 -12
- package/esm2020/lib/panel/task-panel-list/abstract-task-list.component.mjs +3 -3
- package/esm2020/lib/panel/task-panel-list/default-task-panel-list/abstract-default-task-list.component.mjs +94 -0
- package/esm2020/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.mjs +3 -3
- package/esm2020/lib/panel/workflow-panel/abstract-workflow-panel.component.mjs +40 -6
- package/esm2020/lib/public/factories/public-factory-resolver.mjs +8 -3
- package/esm2020/lib/resources/engine-endpoint/petri-net-resource.service.mjs +12 -4
- package/esm2020/lib/resources/engine-endpoint/public/public-task-resource.service.mjs +1 -40
- package/esm2020/lib/resources/engine-endpoint/task-resource.service.mjs +6 -3
- package/esm2020/lib/resources/interface/fields.mjs +1 -1
- package/esm2020/lib/routing/redirect-service/redirect.service.mjs +2 -1
- package/esm2020/lib/search/models/category/case/case-dataset.mjs +7 -4
- package/esm2020/lib/search/search-operand-input-component/abstract-search-operand-input.component.mjs +3 -3
- package/esm2020/lib/side-menu/content-components/new-case/abstract-new-case.component.mjs +22 -11
- package/esm2020/lib/side-menu/content-components/new-case/model/new-case-injection-data.mjs +1 -1
- package/esm2020/lib/side-menu/content-components/save-filter/abstract-save-filter.component.mjs +8 -7
- package/esm2020/lib/side-menu/content-components/user-assign/abstract-user-assign.component.mjs +1 -1
- package/esm2020/lib/side-menu/content-components/user-assign/model/user-list-injected-data.mjs +1 -1
- package/esm2020/lib/snack-bar/components/error-snack-bar/error-snack-bar.component.mjs +3 -3
- package/esm2020/lib/snack-bar/components/generic-snack-bar/generic-snack-bar.component.mjs +3 -3
- package/esm2020/lib/snack-bar/components/success-snack-bar/success-snack-bar.component.mjs +3 -3
- package/esm2020/lib/snack-bar/components/warning-snack-bar/warning-snack-bar.component.mjs +3 -3
- package/esm2020/lib/snack-bar/models/abstract-snack-bar.component.mjs +26 -0
- package/esm2020/lib/snack-bar/public-api.mjs +2 -2
- package/esm2020/lib/task/services/finish-policy.service.mjs +2 -2
- package/esm2020/lib/task/services/task-data.service.mjs +51 -13
- package/esm2020/lib/task-content/model/field-type-resource.mjs +2 -1
- package/esm2020/lib/task-content/model/resource-interface.mjs +1 -1
- package/esm2020/lib/task-content/services/field-converter.service.mjs +28 -90
- package/esm2020/lib/task-content/services/task-content.service.mjs +5 -2
- package/esm2020/lib/view/abstract/view-with-headers.mjs +13 -4
- package/esm2020/lib/view/case-view/abstract-case-view.mjs +9 -12
- package/esm2020/lib/view/case-view/components/case-list/abstract-case-list.component.mjs +3 -3
- package/esm2020/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.mjs +3 -3
- package/esm2020/lib/view/case-view/components/default-case-list/abstract-default-case-list.component.mjs +81 -0
- package/esm2020/lib/view/case-view/tabbed-case-view.mjs +7 -14
- package/esm2020/lib/view/task-view/abstract-single-task-view.component.mjs +3 -4
- package/esm2020/lib/view/task-view/abstract-task-view.mjs +6 -5
- package/esm2020/lib/view/task-view/tabbed-task-view.mjs +6 -5
- package/esm2020/lib/view/tree-case-view/tree-component/case-tree.service.mjs +6 -4
- package/esm2020/lib/view/workflow-view/abstract-workflow-view.component.mjs +6 -5
- package/fesm2015/netgrif-components-core.mjs +1010 -611
- package/fesm2015/netgrif-components-core.mjs.map +1 -1
- package/fesm2020/netgrif-components-core.mjs +996 -616
- package/fesm2020/netgrif-components-core.mjs.map +1 -1
- package/lib/admin/public-api.d.ts +1 -1
- package/lib/admin/role-assignment-ldap-group/{abstract-ldap-group-role-assignment.d.ts → abstract-ldap-group-role-assignment.component.d.ts} +3 -3
- package/lib/authentication/services/methods/basic-authentication/basic-authentication.service.d.ts +2 -0
- package/lib/authorization/role/role-guard.service.d.ts +2 -1
- package/lib/data-fields/button-field/abstract-button-field.component.d.ts +0 -5
- package/lib/data-fields/button-field/models/button-field.d.ts +1 -12
- package/lib/data-fields/enumeration-field/models/dynamic-enumeration-field.d.ts +2 -3
- package/lib/data-fields/enumeration-field/models/enumeration-field.d.ts +1 -11
- package/lib/data-fields/i18n-field/abstract-i18n-field.component.d.ts +0 -1
- package/lib/data-fields/models/abstract-data-field.d.ts +5 -0
- package/lib/data-fields/multichoice-field/models/multichoice-field.d.ts +1 -8
- package/lib/data-fields/multichoice-field/multichoice-autocomplete-field/abstract-multichoice-autocomplete-field-component.component.d.ts +24 -0
- package/lib/data-fields/number-field/currency-number-field/abstract-currency-number-field.component.d.ts +1 -0
- package/lib/data-fields/public-api.d.ts +3 -0
- package/lib/data-fields/text-field/models/text-area-field.d.ts +2 -3
- package/lib/data-fields/text-field/models/text-field.d.ts +1 -9
- package/lib/data-fields/user-list-field/abstract-user-list-field.component.d.ts +38 -0
- package/lib/data-fields/user-list-field/models/user-list-field.d.ts +10 -0
- package/lib/data-fields/user-list-field/models/user-list-value.d.ts +16 -0
- package/lib/dialog/components/alert-dialog/alert-dialog.component.d.ts +3 -3
- package/lib/dialog/components/confirm-dialog/confirm-dialog.component.d.ts +3 -3
- package/lib/dialog/components/prompt-dialog/prompt-dialog.component.d.ts +3 -3
- package/lib/dialog/models/{abstract-dialog.d.ts → abstract-dialog.component.d.ts} +3 -3
- package/lib/header/abstract-header-service.d.ts +6 -3
- package/lib/header/abstract-header.component.d.ts +2 -2
- package/lib/header/services/overflow.service.d.ts +1 -1
- package/lib/header/task-header/task-header.service.d.ts +3 -2
- package/lib/header/workflow-header/workflow-header.service.d.ts +3 -2
- package/lib/navigation/breadcrumbs/abstract-breadcrumbs.component.d.ts +18 -0
- package/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.d.ts +1 -1
- package/lib/navigation/public-api.d.ts +1 -0
- package/lib/navigation/service/uri.service.d.ts +2 -0
- package/lib/panel/abstract/panel-with-header-binding.d.ts +5 -2
- package/lib/panel/abstract/panel-with-immediate-data.d.ts +4 -2
- package/lib/panel/abstract-panel.component.d.ts +5 -1
- package/lib/panel/case-panel/abstract-case-panel.component.d.ts +3 -3
- package/lib/panel/configuration/config-params.d.ts +3 -0
- package/lib/panel/public-api.d.ts +1 -0
- package/lib/panel/task-panel/abstract-task-panel.component.d.ts +5 -2
- package/lib/panel/task-panel-list/abstract-task-list.component.d.ts +2 -2
- package/lib/panel/task-panel-list/default-task-panel-list/{abstract-default-task-list.d.ts → abstract-default-task-list.component.d.ts} +3 -3
- package/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.d.ts +2 -2
- package/lib/panel/workflow-panel/abstract-workflow-panel.component.d.ts +13 -2
- package/lib/public/factories/public-factory-resolver.d.ts +2 -1
- package/lib/resources/engine-endpoint/petri-net-resource.service.d.ts +1 -1
- package/lib/resources/engine-endpoint/public/public-task-resource.service.d.ts +0 -12
- package/lib/resources/engine-endpoint/task-resource.service.d.ts +2 -1
- package/lib/resources/interface/fields.d.ts +0 -5
- package/lib/search/search-operand-input-component/abstract-search-operand-input.component.d.ts +1 -1
- package/lib/side-menu/content-components/new-case/model/new-case-injection-data.d.ts +5 -0
- package/lib/side-menu/content-components/save-filter/abstract-save-filter.component.d.ts +2 -1
- package/lib/side-menu/content-components/user-assign/model/user-list-injected-data.d.ts +2 -1
- package/lib/snack-bar/components/error-snack-bar/error-snack-bar.component.d.ts +2 -2
- package/lib/snack-bar/components/generic-snack-bar/generic-snack-bar.component.d.ts +2 -2
- package/lib/snack-bar/components/success-snack-bar/success-snack-bar.component.d.ts +2 -2
- package/lib/snack-bar/components/warning-snack-bar/warning-snack-bar.component.d.ts +2 -2
- package/lib/snack-bar/models/{abstract-snack-bar.d.ts → abstract-snack-bar.component.d.ts} +3 -3
- package/lib/snack-bar/public-api.d.ts +1 -1
- package/lib/task/services/task-data.service.d.ts +12 -3
- package/lib/task-content/model/field-type-resource.d.ts +1 -0
- package/lib/task-content/model/resource-interface.d.ts +0 -3
- package/lib/task-content/services/field-converter.service.d.ts +3 -16
- package/lib/task-content/services/task-content.service.d.ts +1 -0
- package/lib/view/abstract/view-with-headers.d.ts +5 -1
- package/lib/view/case-view/abstract-case-view.d.ts +5 -3
- package/lib/view/case-view/components/case-list/abstract-case-list.component.d.ts +2 -2
- package/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.d.ts +2 -2
- package/lib/view/case-view/components/default-case-list/{abstract-default-case-list.d.ts → abstract-default-case-list.component.d.ts} +3 -3
- package/lib/view/case-view/tabbed-case-view.d.ts +4 -4
- package/lib/view/task-view/abstract-single-task-view.component.d.ts +0 -1
- package/lib/view/task-view/abstract-task-view.d.ts +2 -1
- package/lib/view/task-view/tabbed-task-view.d.ts +2 -1
- package/lib/view/workflow-view/abstract-workflow-view.component.d.ts +2 -1
- package/package.json +1 -2
- package/schematics/_commons/view-class-info.js +8 -0
- package/schematics/_commons/view-class-info.js.map +1 -1
- package/src/assets/i18n/de.json +18 -8
- package/src/assets/i18n/en.json +11 -1
- package/src/assets/i18n/sk.json +11 -1
- package/src/schema/nae-schema.json +6 -0
- package/esm2020/lib/admin/role-assignment-ldap-group/abstract-ldap-group-role-assignment.mjs +0 -88
- package/esm2020/lib/dialog/models/abstract-dialog.mjs +0 -29
- package/esm2020/lib/panel/task-panel-list/default-task-panel-list/abstract-default-task-list.mjs +0 -94
- package/esm2020/lib/snack-bar/models/abstract-snack-bar.mjs +0 -26
- package/esm2020/lib/view/case-view/components/default-case-list/abstract-default-case-list.mjs +0 -81
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { filter } from 'rxjs/operators';
|
|
2
|
+
import { TabbedVirtualScrollComponent } from '../../abstract/tabbed-virtual-scroll.component';
|
|
3
|
+
import { Component, EventEmitter, Inject, Input, Optional, Output } from '@angular/core';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { NAE_TAB_DATA } from '../../../tabs/tab-data-injection-token/tab-data-injection-token';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../view/task-view/service/task-view.service";
|
|
8
|
+
import * as i2 from "../../../logger/services/logger.service";
|
|
9
|
+
import * as i3 from "@angular/router";
|
|
10
|
+
export class AbstractDefaultTaskListComponent extends TabbedVirtualScrollComponent {
|
|
11
|
+
constructor(_taskViewService, _log, injectedTabData, route) {
|
|
12
|
+
super(injectedTabData);
|
|
13
|
+
this._taskViewService = _taskViewService;
|
|
14
|
+
this._log = _log;
|
|
15
|
+
this.route = route;
|
|
16
|
+
this._allowMultiOpen = true;
|
|
17
|
+
this.responsiveBody = true;
|
|
18
|
+
this.forceLoadDataOnOpen = false;
|
|
19
|
+
this.textEllipsis = false;
|
|
20
|
+
this.taskEvent = new EventEmitter();
|
|
21
|
+
this._taskPanelRefs = new Map();
|
|
22
|
+
this._unsubscribe$ = new Subject();
|
|
23
|
+
}
|
|
24
|
+
set allowMultiOpen(bool) {
|
|
25
|
+
this._allowMultiOpen = bool;
|
|
26
|
+
this._taskViewService.allowMultiOpen = bool;
|
|
27
|
+
}
|
|
28
|
+
get allowMultiOpen() {
|
|
29
|
+
return this._allowMultiOpen;
|
|
30
|
+
}
|
|
31
|
+
ngOnDestroy() {
|
|
32
|
+
super.ngOnDestroy();
|
|
33
|
+
this.taskEvent.complete();
|
|
34
|
+
this._unsubscribe$.complete();
|
|
35
|
+
}
|
|
36
|
+
ngAfterViewInit() {
|
|
37
|
+
this.onRedirect();
|
|
38
|
+
}
|
|
39
|
+
trackBy(_idx, item) {
|
|
40
|
+
return item.task.stringId;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Emits an event into this component's @Output attribute
|
|
44
|
+
* @param event the event that will be emitted
|
|
45
|
+
*/
|
|
46
|
+
emitTaskEvent(event) {
|
|
47
|
+
this.taskEvent.emit(event);
|
|
48
|
+
}
|
|
49
|
+
addToPanelRefs(task, panelRef) {
|
|
50
|
+
this._taskPanelRefs.set(task.task.stringId, panelRef);
|
|
51
|
+
}
|
|
52
|
+
onRedirect() {
|
|
53
|
+
this.route.queryParams.pipe(filter(pm => !!pm['taskId'])).subscribe(pm => {
|
|
54
|
+
this._redirectTaskId = pm['taskId'];
|
|
55
|
+
this._tasks$.pipe().subscribe(tasks => {
|
|
56
|
+
const task = tasks.find(t => t.task.stringId === this._redirectTaskId);
|
|
57
|
+
if (!!task && !task.initiallyExpanded) {
|
|
58
|
+
this._taskPanelRefs.get(this._redirectTaskId).open();
|
|
59
|
+
this._taskPanelRefs.get(this._redirectTaskId).expanded = true;
|
|
60
|
+
this._unsubscribe$.next();
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
AbstractDefaultTaskListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AbstractDefaultTaskListComponent, deps: [{ token: i1.TaskViewService }, { token: i2.LoggerService }, { token: NAE_TAB_DATA, optional: true }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
+
AbstractDefaultTaskListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: AbstractDefaultTaskListComponent, selector: "ncc-abstract-default-task-list", inputs: { loading$: "loading$", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", allowMultiOpen: "allowMultiOpen" }, outputs: { taskEvent: "taskEvent" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AbstractDefaultTaskListComponent, decorators: [{
|
|
69
|
+
type: Component,
|
|
70
|
+
args: [{
|
|
71
|
+
selector: 'ncc-abstract-default-task-list',
|
|
72
|
+
template: ''
|
|
73
|
+
}]
|
|
74
|
+
}], ctorParameters: function () { return [{ type: i1.TaskViewService }, { type: i2.LoggerService }, { type: undefined, decorators: [{
|
|
75
|
+
type: Optional
|
|
76
|
+
}, {
|
|
77
|
+
type: Inject,
|
|
78
|
+
args: [NAE_TAB_DATA]
|
|
79
|
+
}] }, { type: i3.ActivatedRoute }]; }, propDecorators: { loading$: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], selectedHeaders$: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], responsiveBody: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], forceLoadDataOnOpen: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], textEllipsis: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], allowMultiOpen: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], taskEvent: [{
|
|
92
|
+
type: Output
|
|
93
|
+
}] } });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZGVmYXVsdC10YXNrLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9wYW5lbC90YXNrLXBhbmVsLWxpc3QvZGVmYXVsdC10YXNrLXBhbmVsLWxpc3QvYWJzdHJhY3QtZGVmYXVsdC10YXNrLWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUM1RixPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxRQUFRLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFNekMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlFQUFpRSxDQUFDOzs7OztBQVE3RixNQUFNLE9BQWdCLGdDQUFpQyxTQUFRLDRCQUE0QjtJQTRCdkYsWUFBc0IsZ0JBQWlDLEVBQ2pDLElBQW1CLEVBQ0ssZUFBZ0MsRUFDeEQsS0FBc0I7UUFDeEMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBSkwscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxTQUFJLEdBQUosSUFBSSxDQUFlO1FBRW5CLFVBQUssR0FBTCxLQUFLLENBQWlCO1FBMUJsQyxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUl4QixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0Qix3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUFDNUIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFzQjFCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFDM0Qs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QUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNYXRFeHBhbnNpb25QYW5lbH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZXhwYW5zaW9uJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge2ZpbHRlcn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtUYWJiZWRWaXJ0dWFsU2Nyb2xsQ29tcG9uZW50fSBmcm9tICcuLi8uLi9hYnN0cmFjdC90YWJiZWQtdmlydHVhbC1zY3JvbGwuY29tcG9uZW50JztcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUYXNrUGFuZWxEYXRhfSBmcm9tICcuLi90YXNrLXBhbmVsLWRhdGEvdGFzay1wYW5lbC1kYXRhJztcbmltcG9ydCB7SGVhZGVyQ29sdW1ufSBmcm9tICcuLi8uLi8uLi9oZWFkZXIvbW9kZWxzL2hlYWRlci1jb2x1bW4nO1xuaW1wb3J0IHtUYXNrRXZlbnROb3RpZmljYXRpb259IGZyb20gJy4uLy4uLy4uL3Rhc2stY29udGVudC9tb2RlbC90YXNrLWV2ZW50LW5vdGlmaWNhdGlvbic7XG5pbXBvcnQge1Rhc2tWaWV3U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vdmlldy90YXNrLXZpZXcvc2VydmljZS90YXNrLXZpZXcuc2VydmljZSc7XG5pbXBvcnQge0xvZ2dlclNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2xvZ2dlci9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQge05BRV9UQUJfREFUQX0gZnJvbSAnLi4vLi4vLi4vdGFicy90YWItZGF0YS1pbmplY3Rpb24tdG9rZW4vdGFiLWRhdGEtaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7SW5qZWN0ZWRUYWJEYXRhfSBmcm9tICcuLi8uLi8uLi90YWJzL2ludGVyZmFjZXMnO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LWRlZmF1bHQtdGFzay1saXN0JyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3REZWZhdWx0VGFza0xpc3RDb21wb25lbnQgZXh0ZW5kcyBUYWJiZWRWaXJ0dWFsU2Nyb2xsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAgIHByb3RlY3RlZCBfdGFza3MkOiBPYnNlcnZhYmxlPEFycmF5PFRhc2tQYW5lbERhdGE+PjtcbiAgICBwcm90ZWN0ZWQgX3JlZGlyZWN0VGFza0lkOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIF91bnN1YnNjcmliZSQ6IFN1YmplY3Q8dm9pZD47XG4gICAgcHJvdGVjdGVkIF9hbGxvd011bHRpT3BlbiA9IHRydWU7XG4gICAgcHJvdGVjdGVkIF90YXNrUGFuZWxSZWZzOiBNYXA8c3RyaW5nLCBNYXRFeHBhbnNpb25QYW5lbD47XG4gICAgQElucHV0KCkgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgQElucHV0KCkgc2VsZWN0ZWRIZWFkZXJzJDogT2JzZXJ2YWJsZTxBcnJheTxIZWFkZXJDb2x1bW4+PjtcbiAgICBASW5wdXQoKSByZXNwb25zaXZlQm9keSA9IHRydWU7XG4gICAgQElucHV0KCkgZm9yY2VMb2FkRGF0YU9uT3BlbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHRleHRFbGxpcHNpcyA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgYWxsb3dNdWx0aU9wZW4oYm9vbDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9hbGxvd011bHRpT3BlbiA9IGJvb2w7XG4gICAgICAgIHRoaXMuX3Rhc2tWaWV3U2VydmljZS5hbGxvd011bHRpT3BlbiA9IGJvb2w7XG4gICAgfVxuXG4gICAgZ2V0IGFsbG93TXVsdGlPcGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWxsb3dNdWx0aU9wZW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRW1pdHMgbm90aWZpY2F0aW9ucyBhYm91dCB0YXNrIGV2ZW50c1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0YXNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxUYXNrRXZlbnROb3RpZmljYXRpb24+O1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF90YXNrVmlld1NlcnZpY2U6IFRhc2tWaWV3U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9UQUJfREFUQSkgaW5qZWN0ZWRUYWJEYXRhOiBJbmplY3RlZFRhYkRhdGEsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIHJvdXRlPzogQWN0aXZhdGVkUm91dGUpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0ZWRUYWJEYXRhKTtcbiAgICAgICAgdGhpcy50YXNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFRhc2tFdmVudE5vdGlmaWNhdGlvbj4oKTtcbiAgICAgICAgdGhpcy5fdGFza1BhbmVsUmVmcyA9IG5ldyBNYXA8c3RyaW5nLCBNYXRFeHBhbnNpb25QYW5lbD4oKTtcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy50YXNrRXZlbnQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLm9uUmVkaXJlY3QoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdHJhY2tCeShfaWR4OiBudW1iZXIsIGl0ZW06IFRhc2tQYW5lbERhdGEpOiBhbnkge1xuICAgICAgICByZXR1cm4gaXRlbS50YXNrLnN0cmluZ0lkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXRzIGFuIGV2ZW50IGludG8gdGhpcyBjb21wb25lbnQncyBAT3V0cHV0IGF0dHJpYnV0ZVxuICAgICAqIEBwYXJhbSBldmVudCB0aGUgZXZlbnQgdGhhdCB3aWxsIGJlIGVtaXR0ZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgZW1pdFRhc2tFdmVudChldmVudDogVGFza0V2ZW50Tm90aWZpY2F0aW9uKSB7XG4gICAgICAgIHRoaXMudGFza0V2ZW50LmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRUb1BhbmVsUmVmcyh0YXNrOiBUYXNrUGFuZWxEYXRhLCBwYW5lbFJlZjogTWF0RXhwYW5zaW9uUGFuZWwpIHtcbiAgICAgICAgdGhpcy5fdGFza1BhbmVsUmVmcy5zZXQodGFzay50YXNrLnN0cmluZ0lkLCBwYW5lbFJlZik7XG4gICAgfVxuXG4gICAgcHVibGljIG9uUmVkaXJlY3QoKSB7XG4gICAgICAgIHRoaXMucm91dGUucXVlcnlQYXJhbXMucGlwZShmaWx0ZXIocG0gPT4gISFwbVsndGFza0lkJ10pKS5zdWJzY3JpYmUocG0gPT4ge1xuICAgICAgICAgICAgdGhpcy5fcmVkaXJlY3RUYXNrSWQgPSBwbVsndGFza0lkJ107XG4gICAgICAgICAgICB0aGlzLl90YXNrcyQucGlwZSgpLnN1YnNjcmliZSh0YXNrcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFzayA9IHRhc2tzLmZpbmQodCA9PiB0LnRhc2suc3RyaW5nSWQgPT09IHRoaXMuX3JlZGlyZWN0VGFza0lkKTtcbiAgICAgICAgICAgICAgICBpZiAoISF0YXNrICYmICF0YXNrLmluaXRpYWxseUV4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tQYW5lbFJlZnMuZ2V0KHRoaXMuX3JlZGlyZWN0VGFza0lkKS5vcGVuKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3Rhc2tQYW5lbFJlZnMuZ2V0KHRoaXMuX3JlZGlyZWN0VGFza0lkKS5leHBhbmRlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Component, Inject, Input, Optional } from '@angular/core';
|
|
2
2
|
import { tap } from 'rxjs/operators';
|
|
3
|
-
import {
|
|
3
|
+
import { AbstractDefaultTaskListComponent } from '../default-task-panel-list/abstract-default-task-list.component';
|
|
4
4
|
import { NAE_TAB_DATA } from '../../../tabs/tab-data-injection-token/tab-data-injection-token';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../../../view/task-view/service/task-view.service";
|
|
7
7
|
import * as i2 from "../../../logger/services/logger.service";
|
|
8
8
|
import * as i3 from "@angular/router";
|
|
9
|
-
export class AbstractTaskListPaginationComponent extends
|
|
9
|
+
export class AbstractTaskListPaginationComponent extends AbstractDefaultTaskListComponent {
|
|
10
10
|
constructor(_taskViewService, _log, injectedTabData, route) {
|
|
11
11
|
super(_taskViewService, _log, injectedTabData, route);
|
|
12
12
|
this._taskViewService = _taskViewService;
|
|
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
47
47
|
}] }, { type: i3.ActivatedRoute }]; }, propDecorators: { tasks$: [{
|
|
48
48
|
type: Input
|
|
49
49
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFzay1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9wYW5lbC90YXNrLXBhbmVsLWxpc3QvdGFzay1wYW5lbC1saXN0LXBhZ2luYXRpb24vYWJzdHJhY3QtdGFzay1saXN0LXBhZ2luYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBSWpILE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQzs7Ozs7QUFPN0YsTUFBTSxPQUFnQixtQ0FBb0MsU0FBUSxnQ0FBZ0M7SUFtQjlGLFlBQXNCLGdCQUFpQyxFQUNqQyxJQUFtQixFQUNLLGVBQWdDLEVBQ3hELEtBQXNCO1FBQ3hDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBSnBDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDakMsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUVuQixVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQW5CckMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxvQkFBZSxHQUFrQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFtQnJELENBQUM7SUFqQkQsSUFDSSxNQUFNLENBQUMsS0FBdUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1lBQzdELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBU00sYUFBYSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7aUlBOUJpQixtQ0FBbUMsOEVBcUJyQixZQUFZO3FIQXJCMUIsbUNBQW1DLHdJQUYzQyxFQUFFOzRGQUVNLG1DQUFtQztrQkFKeEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsNkNBQTZDO29CQUN2RCxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBc0JnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFlBQVk7eUVBYnhDLE1BQU07c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0Fic3RyYWN0RGVmYXVsdFRhc2tMaXN0Q29tcG9uZW50fSBmcm9tICcuLi9kZWZhdWx0LXRhc2stcGFuZWwtbGlzdC9hYnN0cmFjdC1kZWZhdWx0LXRhc2stbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHtUYXNrUGFuZWxEYXRhfSBmcm9tICcuLi90YXNrLXBhbmVsLWRhdGEvdGFzay1wYW5lbC1kYXRhJztcbmltcG9ydCB7VGFza1ZpZXdTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi92aWV3L3Rhc2stdmlldy9zZXJ2aWNlL3Rhc2stdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7TkFFX1RBQl9EQVRBfSBmcm9tICcuLi8uLi8uLi90YWJzL3RhYi1kYXRhLWluamVjdGlvbi10b2tlbi90YWItZGF0YS1pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHtJbmplY3RlZFRhYkRhdGF9IGZyb20gJy4uLy4uLy4uL3RhYnMvaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LXRhc2stbGlzdC1wYWdpbmF0aW9uLWNvbXBvbmVudCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VGFza0xpc3RQYWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REZWZhdWx0VGFza0xpc3RDb21wb25lbnQge1xuXG4gICAgcHVibGljIGxlbmd0aDogbnVtYmVyO1xuICAgIHB1YmxpYyBwYWdlU2l6ZSA9IDIwO1xuICAgIHB1YmxpYyBwYWdlSW5kZXggPSAwO1xuICAgIHB1YmxpYyBwYWdlU2l6ZU9wdGlvbnM6IEFycmF5PG51bWJlcj4gPSBbMTAsIDIwLCA1MF07XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCB0YXNrcyQodGFza3M6IE9ic2VydmFibGU8QXJyYXk8VGFza1BhbmVsRGF0YT4+KSB7XG4gICAgICAgIHRoaXMuX3Rhc2tzJCA9IHRhc2tzLnBpcGUoKHRhcCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9IHRoaXMuX3Rhc2tWaWV3U2VydmljZS5wYWdpbmF0aW9uLnRvdGFsRWxlbWVudHM7XG4gICAgICAgICAgICB0aGlzLnBhZ2VJbmRleCA9IHRoaXMuX3Rhc2tWaWV3U2VydmljZS5wYWdpbmF0aW9uLm51bWJlcjtcbiAgICAgICAgfSkpKTtcbiAgICB9XG5cbiAgICBnZXQgdGFza3MkKCk6IE9ic2VydmFibGU8QXJyYXk8VGFza1BhbmVsRGF0YT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tzJDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Rhc2tWaWV3U2VydmljZTogVGFza1ZpZXdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkFFX1RBQl9EQVRBKSBpbmplY3RlZFRhYkRhdGE6IEluamVjdGVkVGFiRGF0YSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgcm91dGU/OiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgICAgICBzdXBlcihfdGFza1ZpZXdTZXJ2aWNlLCBfbG9nLCBpbmplY3RlZFRhYkRhdGEsIHJvdXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25QYWdlQ2hhbmdlZChlKSB7XG4gICAgICAgIHRoaXMucGFnZUluZGV4ID0gZS5wYWdlSW5kZXg7XG4gICAgICAgIHRoaXMucGFnZVNpemUgPSBlLnBhZ2VTaXplO1xuICAgICAgICB0aGlzLl90YXNrVmlld1NlcnZpY2UubmV4dFBhZ2VQYWdpbmF0aW9uKHRoaXMucGFnZVNpemUsIHRoaXMucGFnZUluZGV4KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,20 +1,25 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, Input, Optional } from '@angular/core';
|
|
2
2
|
import { AbstractPanelWithHeaderBindingComponent } from '../abstract/panel-with-header-binding';
|
|
3
3
|
import { toMoment } from '../../resources/types/nae-date-type';
|
|
4
4
|
import { DATE_TIME_FORMAT_STRING } from '../../moment/time-formats';
|
|
5
5
|
import { TextField } from '../../data-fields/text-field/models/text-field';
|
|
6
6
|
import { DateTimeField } from '../../data-fields/date-time-field/models/date-time-field';
|
|
7
7
|
import { WorkflowMetaField } from '../../header/workflow-header/workflow-meta-enum';
|
|
8
|
+
import { ProgressType } from '../../resources/resource-provider.service';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "../../logger/services/logger.service";
|
|
10
11
|
import * as i2 from "@ngx-translate/core";
|
|
11
12
|
import * as i3 from "../../view/workflow-view/workflow-view.service";
|
|
13
|
+
import * as i4 from "../../resources/engine-endpoint/petri-net-resource.service";
|
|
14
|
+
import * as i5 from "../../header/services/overflow.service";
|
|
12
15
|
export class AbstractWorkflowPanelComponent extends AbstractPanelWithHeaderBindingComponent {
|
|
13
|
-
constructor(_log, _translate, _workflowService) {
|
|
14
|
-
super();
|
|
16
|
+
constructor(_log, _translate, _workflowService, _petriNetResource, _overflowService) {
|
|
17
|
+
super(_overflowService);
|
|
15
18
|
this._log = _log;
|
|
16
19
|
this._translate = _translate;
|
|
17
20
|
this._workflowService = _workflowService;
|
|
21
|
+
this._petriNetResource = _petriNetResource;
|
|
22
|
+
this._overflowService = _overflowService;
|
|
18
23
|
this.responsiveBody = true;
|
|
19
24
|
this.showDeleteMenu = false;
|
|
20
25
|
this.TRANSLATION_NET = 'panel.workflow.net';
|
|
@@ -56,6 +61,33 @@ export class AbstractWorkflowPanelComponent extends AbstractPanelWithHeaderBindi
|
|
|
56
61
|
deleteWorkflow() {
|
|
57
62
|
this._workflowService.deleteWorkflow(this.workflow);
|
|
58
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Handles the logic that should be executed when the "download workflow" button is clicked.
|
|
66
|
+
*
|
|
67
|
+
* Calls the appropriate method in the {@link WorkflowViewService}.
|
|
68
|
+
*/
|
|
69
|
+
downloadNetFile() {
|
|
70
|
+
this._petriNetResource.getNetFile(this.workflow.stringId).subscribe(response => {
|
|
71
|
+
if (!response.type || response.type !== ProgressType.DOWNLOAD) {
|
|
72
|
+
this._log.debug(`File ${this.workflow.identifier} was successfully downloaded`);
|
|
73
|
+
this.downloadViaAnchor(response);
|
|
74
|
+
}
|
|
75
|
+
}, error => {
|
|
76
|
+
this._log.error(`Downloading file ${this.workflow.identifier} has failed!`, error);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
downloadViaAnchor(blob) {
|
|
80
|
+
const a = document.createElement('a');
|
|
81
|
+
document.body.appendChild(a);
|
|
82
|
+
a.setAttribute('style', 'display: none');
|
|
83
|
+
blob = new Blob([blob], { type: blob.type });
|
|
84
|
+
const url = window.URL.createObjectURL(blob);
|
|
85
|
+
a.href = url;
|
|
86
|
+
a.download = this.workflow.identifier;
|
|
87
|
+
a.click();
|
|
88
|
+
window.URL.revokeObjectURL(url);
|
|
89
|
+
document.body.removeChild(a);
|
|
90
|
+
}
|
|
59
91
|
/**
|
|
60
92
|
* Populate data fields group for every petri net model
|
|
61
93
|
*/
|
|
@@ -98,7 +130,7 @@ export class AbstractWorkflowPanelComponent extends AbstractPanelWithHeaderBindi
|
|
|
98
130
|
return { value: '', icon: '', type: '' };
|
|
99
131
|
}
|
|
100
132
|
}
|
|
101
|
-
AbstractWorkflowPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AbstractWorkflowPanelComponent, deps: [{ token: i1.LoggerService }, { token: i2.TranslateService }, { token: i3.WorkflowViewService }], target: i0.ɵɵFactoryTarget.Component });
|
|
133
|
+
AbstractWorkflowPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AbstractWorkflowPanelComponent, deps: [{ token: i1.LoggerService }, { token: i2.TranslateService }, { token: i3.WorkflowViewService }, { token: i4.PetriNetResourceService }, { token: i5.OverflowService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
102
134
|
AbstractWorkflowPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: AbstractWorkflowPanelComponent, selector: "ncc-abstract-workflow-panel", inputs: { workflow: "workflow", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", showDeleteMenu: "showDeleteMenu" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
103
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AbstractWorkflowPanelComponent, decorators: [{
|
|
104
136
|
type: Component,
|
|
@@ -106,7 +138,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
106
138
|
selector: 'ncc-abstract-workflow-panel',
|
|
107
139
|
template: ''
|
|
108
140
|
}]
|
|
109
|
-
}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.TranslateService }, { type: i3.WorkflowViewService }
|
|
141
|
+
}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.TranslateService }, { type: i3.WorkflowViewService }, { type: i4.PetriNetResourceService }, { type: i5.OverflowService, decorators: [{
|
|
142
|
+
type: Optional
|
|
143
|
+
}] }]; }, propDecorators: { workflow: [{
|
|
110
144
|
type: Input
|
|
111
145
|
}], selectedHeaders$: [{
|
|
112
146
|
type: Input
|
|
@@ -115,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
115
149
|
}], showDeleteMenu: [{
|
|
116
150
|
type: Input
|
|
117
151
|
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtd29ya2Zsb3ctcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9wYW5lbC93b3JrZmxvdy1wYW5lbC9hYnN0cmFjdC13b3JrZmxvdy1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBSTlGLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDekUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBSXZGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDOzs7OztBQWlCbEYsTUFBTSxPQUFnQiw4QkFBK0IsU0FBUSx1Q0FBdUM7SUFpQmhHLFlBQWdDLElBQW1CLEVBQ25CLFVBQTRCLEVBQzVCLGdCQUFxQztRQUNqRSxLQUFLLEVBQUUsQ0FBQztRQUhvQixTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQzVCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFmNUQsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFJZixvQkFBZSxHQUFHLG9CQUFvQixDQUFDO1FBQ3ZDLHNCQUFpQixHQUFHLHNCQUFzQixDQUFDO1FBQzNDLHdCQUFtQixHQUFHLHdCQUF3QixDQUFDO1FBQy9DLHVCQUFrQixHQUFHLHVCQUF1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S0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdEV4cGFuc2lvblBhbmVsfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb24nO1xuaW1wb3J0IHtBYnN0cmFjdFBhbmVsV2l0aEhlYWRlckJpbmRpbmdDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0L3BhbmVsLXdpdGgtaGVhZGVyLWJpbmRpbmcnO1xuaW1wb3J0IHtIZWFkZXJDb2x1bW59IGZyb20gJy4uLy4uL2hlYWRlci9tb2RlbHMvaGVhZGVyLWNvbHVtbic7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvZ2dlclNlcnZpY2V9IGZyb20gJy4uLy4uL2xvZ2dlci9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQge3RvTW9tZW50fSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHlwZXMvbmFlLWRhdGUtdHlwZSc7XG5pbXBvcnQge0RBVEVfVElNRV9GT1JNQVRfU1RSSU5HfSBmcm9tICcuLi8uLi9tb21lbnQvdGltZS1mb3JtYXRzJztcbmltcG9ydCB7VGV4dEZpZWxkfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy90ZXh0LWZpZWxkL21vZGVscy90ZXh0LWZpZWxkJztcbmltcG9ydCB7RGF0ZVRpbWVGaWVsZH0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkL21vZGVscy9kYXRlLXRpbWUtZmllbGQnO1xuaW1wb3J0IHtCZWhhdmlvcn0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2JlaGF2aW9yJztcbmltcG9ydCB7TmV0fSBmcm9tICcuLi8uLi9wcm9jZXNzL25ldCc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2UsIFRyYW5zbGF0aW9uQ2hhbmdlRXZlbnR9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtXb3JrZmxvd01ldGFGaWVsZH0gZnJvbSAnLi4vLi4vaGVhZGVyL3dvcmtmbG93LWhlYWRlci93b3JrZmxvdy1tZXRhLWVudW0nO1xuaW1wb3J0IHtXb3JrZmxvd1ZpZXdTZXJ2aWNlfSBmcm9tICcuLi8uLi92aWV3L3dvcmtmbG93LXZpZXcvd29ya2Zsb3ctdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7RmVhdHVyZWRWYWx1ZX0gZnJvbSAnLi4vYWJzdHJhY3QvZmVhdHVyZWQtdmFsdWUnO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3dQYW5lbENvbnRlbnQge1xuICAgIG5ldElkZW50aWZpZXI6IFRleHRGaWVsZDtcbiAgICB0aXRsZTogVGV4dEZpZWxkO1xuICAgIHZlcnNpb246IFRleHRGaWVsZDtcbiAgICBhdXRob3I6IFRleHRGaWVsZDtcbiAgICB1cGxvYWRlZDogRGF0ZVRpbWVGaWVsZDtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3Qtd29ya2Zsb3ctcGFuZWwnLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFdvcmtmbG93UGFuZWxDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFBhbmVsV2l0aEhlYWRlckJpbmRpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgd29ya2Zsb3c6IE5ldDtcbiAgICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRIZWFkZXJzJDogT2JzZXJ2YWJsZTxBcnJheTxIZWFkZXJDb2x1bW4+PjtcbiAgICBASW5wdXQoKSByZXNwb25zaXZlQm9keSA9IHRydWU7XG4gICAgQElucHV0KCkgc2hvd0RlbGV0ZU1lbnUgPSBmYWxzZTtcbiAgICBwdWJsaWMgcGFuZWxSZWY6IE1hdEV4cGFuc2lvblBhbmVsO1xuICAgIHB1YmxpYyBwYW5lbENvbnRlbnQ6IFdvcmtmbG93UGFuZWxDb250ZW50O1xuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgVFJBTlNMQVRJT05fTkVUID0gJ3BhbmVsLndvcmtmbG93Lm5ldCc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBUUkFOU0xBVElPTl9USVRMRSA9ICdwYW5lbC53b3JrZmxvdy50aXRsZSc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBUUkFOU0xBVElPTl9WRVJTSU9OID0gJ3BhbmVsLndvcmtmbG93LnZlcnNpb24nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgVFJBTlNMQVRJT05fQVVUSE9SID0gJ3BhbmVsLndvcmtmbG93LmF1dGhvcic7XG4gICAgcHJpdmF0ZSByZWFkb25seSBUUkFOU0xBVElPTl9VUExPQUQgPSAncGFuZWwud29ya2Zsb3cudXBsb2FkJztcblxuICAgIHByb3RlY3RlZCBkYXRhRmllbGRzQmVoYXZpb3VyOiBCZWhhdmlvciA9IHt2aXNpYmxlOiB0cnVlLCBlZGl0YWJsZTogZmFsc2V9O1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF93b3JrZmxvd1NlcnZpY2U6IFdvcmtmbG93Vmlld1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSBfdHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKGV2ZW50OiBUcmFuc2xhdGlvbkNoYW5nZUV2ZW50KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnBhbmVsQ29udGVudC5uZXRJZGVudGlmaWVyLnRpdGxlID0gdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9ORVQpO1xuICAgICAgICAgICAgdGhpcy5wYW5lbENvbnRlbnQudGl0bGUudGl0bGUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX1RJVExFKTtcbiAgICAgICAgICAgIHRoaXMucGFuZWxDb250ZW50LnZlcnNpb24udGl0bGUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX1ZFUlNJT04pO1xuICAgICAgICAgICAgdGhpcy5wYW5lbENvbnRlbnQuYXV0aG9yLnRpdGxlID0gdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9BVVRIT1IpO1xuICAgICAgICAgICAgdGhpcy5wYW5lbENvbnRlbnQudXBsb2FkZWQudGl0bGUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX1VQTE9BRCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLnBhbmVsQ29udGVudCA9IHRoaXMuY3JlYXRlUGFuZWxDb250ZW50KCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93KGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbGxhcHNlKCkge1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRQYW5lbFJlZihwYW5lbFJlZjogTWF0RXhwYW5zaW9uUGFuZWwpIHtcbiAgICAgICAgdGhpcy5wYW5lbFJlZiA9IHBhbmVsUmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgdGhlIGxvZ2ljIHRoYXQgc2hvdWxkIGJlIGV4ZWN1dGVkIHdoZW4gdGhlIFwiZGVsZXRlIHdvcmtmbG93XCIgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAgICpcbiAgICAgKiBDYWxscyB0aGUgYXBwcm9wcmlhdGUgbWV0aG9kIGluIHRoZSB7QGxpbmsgV29ya2Zsb3dWaWV3U2VydmljZX0uXG4gICAgICovXG4gICAgcHVibGljIGRlbGV0ZVdvcmtmbG93KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl93b3JrZmxvd1NlcnZpY2UuZGVsZXRlV29ya2Zsb3codGhpcy53b3JrZmxvdyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUG9wdWxhdGUgZGF0YSBmaWVsZHMgZ3JvdXAgZm9yIGV2ZXJ5IHBldHJpIG5ldCBtb2RlbFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBjcmVhdGVQYW5lbENvbnRlbnQoKTogV29ya2Zsb3dQYW5lbENvbnRlbnQge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmV0SWRlbnRpZmllcjogbmV3IFRleHRGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9ORVQpLFxuICAgICAgICAgICAgICAgIHRoaXMud29ya2Zsb3cuaWRlbnRpZmllciwgdGhpcy5kYXRhRmllbGRzQmVoYXZpb3VyKSxcbiAgICAgICAgICAgIHRpdGxlOiBuZXcgVGV4dEZpZWxkKCcnLCB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX1RJVExFKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LnRpdGxlLCB0aGlzLmRhdGFGaWVsZHNCZWhhdmlvdXIpLFxuICAgICAgICAgICAgdmVyc2lvbjogbmV3IFRleHRGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9WRVJTSU9OKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LnZlcnNpb24sIHRoaXMuZGF0YUZpZWxkc0JlaGF2aW91ciksXG4gICAgICAgICAgICBhdXRob3I6IG5ldyBUZXh0RmllbGQoJycsIHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KHRoaXMuVFJBTlNMQVRJT05fQVVUSE9SKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LmF1dGhvci5mdWxsTmFtZSwgdGhpcy5kYXRhRmllbGRzQmVoYXZpb3VyKSxcbiAgICAgICAgICAgIHVwbG9hZGVkOiBuZXcgRGF0ZVRpbWVGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9VUExPQUQpLFxuICAgICAgICAgICAgICAgIHRvTW9tZW50KHRoaXMud29ya2Zsb3cuY3JlYXRlZERhdGUpLCB0aGlzLmRhdGFGaWVsZHNCZWhhdmlvdXIpXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlc29sdmVGZWF0dXJlZEZpZWxkc1ZhbHVlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9sYXN0U2VsZWN0ZWRIZWFkZXJzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZlYXR1cmVkRmllbGRzVmFsdWVzLnNwbGljZSgwLCB0aGlzLmZlYXR1cmVkRmllbGRzVmFsdWVzLmxlbmd0aCk7XG4gICAgICAgIHRoaXMuX2xhc3RTZWxlY3RlZEhlYWRlcnMuZm9yRWFjaChoZWFkZXIgPT4ge1xuICAgICAgICAgICAgdGhpcy5mZWF0dXJlZEZpZWxkc1ZhbHVlcy5wdXNoKHRoaXMuZ2V0RmVhdHVyZWRWYWx1ZShoZWFkZXIpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZlYXR1cmVkTWV0YVZhbHVlKHNlbGVjdGVkSGVhZGVyOiBIZWFkZXJDb2x1bW4pOiBGZWF0dXJlZFZhbHVlIHtcbiAgICAgICAgc3dpdGNoIChzZWxlY3RlZEhlYWRlci5maWVsZElkZW50aWZpZXIpIHtcbiAgICAgICAgICAgIGNhc2UgV29ya2Zsb3dNZXRhRmllbGQuSU5JVElBTFM6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy5pbml0aWFscywgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFdvcmtmbG93TWV0YUZpZWxkLlRJVExFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMud29ya2Zsb3cudGl0bGUsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBXb3JrZmxvd01ldGFGaWVsZC5ORVRfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy5zdHJpbmdJZCwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFdvcmtmbG93TWV0YUZpZWxkLlZFUlNJT046XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy52ZXJzaW9uLCBpY29uOiAnJywgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgV29ya2Zsb3dNZXRhRmllbGQuQVVUSE9SOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMud29ya2Zsb3cuYXV0aG9yLmZ1bGxOYW1lLCBpY29uOiAnYWNjb3VudF9jaXJjbGUnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBXb3JrZmxvd01ldGFGaWVsZC5DUkVBVElPTl9EQVRFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRvTW9tZW50KHRoaXMud29ya2Zsb3cuY3JlYXRlZERhdGUpLmZvcm1hdChEQVRFX1RJTUVfRk9STUFUX1NUUklORyksIGljb246ICdldmVudCcsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRJbW1lZGlhdGVWYWx1ZShzZWxlY3RlZEhlYWRlcjogSGVhZGVyQ29sdW1uKTogRmVhdHVyZWRWYWx1ZSB7XG4gICAgICAgIHRoaXMuX2xvZy53YXJuKCdJbW1lZGlhdGUgZGF0YSBpbiB3b3JrZmxvdyBwYW5lbCBoZWFkZXJzIGFyZSBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCcpO1xuICAgICAgICByZXR1cm4ge3ZhbHVlOiAnJywgaWNvbjogJycsIHR5cGU6ICcnfTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtd29ya2Zsb3ctcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9wYW5lbC93b3JrZmxvdy1wYW5lbC9hYnN0cmFjdC13b3JrZmxvdy1wYW5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUMsdUNBQXVDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUk5RixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDN0QsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUl2RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUlsRixPQUFPLEVBQUMsWUFBWSxFQUFtQixNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7O0FBZ0J6RixNQUFNLE9BQWdCLDhCQUErQixTQUFRLHVDQUF1QztJQWlCaEcsWUFBZ0MsSUFBbUIsRUFDbkIsVUFBNEIsRUFDNUIsZ0JBQXFDLEVBQ3JDLGlCQUEwQyxFQUM5QixnQkFBaUM7UUFDekUsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFMSSxTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQzVCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUF5QjtRQUM5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWlCO1FBakJwRSxt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LElBQUksQ0FBQyxJQUFJLENBQUMsc0VBQXNFLENBQUMsQ0FBQztRQUN2RixPQUFPLEVBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUMsQ0FBQztJQUMzQyxDQUFDOzs0SEEvSWlCLDhCQUE4QjtnSEFBOUIsOEJBQThCLHNPQUZ0QyxFQUFFOzRGQUVNLDhCQUE4QjtrQkFKbkQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsNkJBQTZCO29CQUN2QyxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBc0IwQixRQUFROzRDQW5CZixRQUFRO3NCQUF2QixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdEV4cGFuc2lvblBhbmVsfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb24nO1xuaW1wb3J0IHtBYnN0cmFjdFBhbmVsV2l0aEhlYWRlckJpbmRpbmdDb21wb25lbnR9IGZyb20gJy4uL2Fic3RyYWN0L3BhbmVsLXdpdGgtaGVhZGVyLWJpbmRpbmcnO1xuaW1wb3J0IHtIZWFkZXJDb2x1bW59IGZyb20gJy4uLy4uL2hlYWRlci9tb2RlbHMvaGVhZGVyLWNvbHVtbic7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvZ2dlclNlcnZpY2V9IGZyb20gJy4uLy4uL2xvZ2dlci9zZXJ2aWNlcy9sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQge3RvTW9tZW50fSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHlwZXMvbmFlLWRhdGUtdHlwZSc7XG5pbXBvcnQge0RBVEVfVElNRV9GT1JNQVRfU1RSSU5HfSBmcm9tICcuLi8uLi9tb21lbnQvdGltZS1mb3JtYXRzJztcbmltcG9ydCB7VGV4dEZpZWxkfSBmcm9tICcuLi8uLi9kYXRhLWZpZWxkcy90ZXh0LWZpZWxkL21vZGVscy90ZXh0LWZpZWxkJztcbmltcG9ydCB7RGF0ZVRpbWVGaWVsZH0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkL21vZGVscy9kYXRlLXRpbWUtZmllbGQnO1xuaW1wb3J0IHtCZWhhdmlvcn0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2JlaGF2aW9yJztcbmltcG9ydCB7TmV0fSBmcm9tICcuLi8uLi9wcm9jZXNzL25ldCc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2UsIFRyYW5zbGF0aW9uQ2hhbmdlRXZlbnR9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtXb3JrZmxvd01ldGFGaWVsZH0gZnJvbSAnLi4vLi4vaGVhZGVyL3dvcmtmbG93LWhlYWRlci93b3JrZmxvdy1tZXRhLWVudW0nO1xuaW1wb3J0IHtXb3JrZmxvd1ZpZXdTZXJ2aWNlfSBmcm9tICcuLi8uLi92aWV3L3dvcmtmbG93LXZpZXcvd29ya2Zsb3ctdmlldy5zZXJ2aWNlJztcbmltcG9ydCB7RmVhdHVyZWRWYWx1ZX0gZnJvbSAnLi4vYWJzdHJhY3QvZmVhdHVyZWQtdmFsdWUnO1xuaW1wb3J0IHtQZXRyaU5ldFJlc291cmNlU2VydmljZX0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2VuZ2luZS1lbmRwb2ludC9wZXRyaS1uZXQtcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1Byb2dyZXNzVHlwZSwgUHJvdmlkZXJQcm9ncmVzc30gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3Jlc291cmNlLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtPdmVyZmxvd1NlcnZpY2V9IGZyb20gJy4uLy4uL2hlYWRlci9zZXJ2aWNlcy9vdmVyZmxvdy5zZXJ2aWNlJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93UGFuZWxDb250ZW50IHtcbiAgICBuZXRJZGVudGlmaWVyOiBUZXh0RmllbGQ7XG4gICAgdGl0bGU6IFRleHRGaWVsZDtcbiAgICB2ZXJzaW9uOiBUZXh0RmllbGQ7XG4gICAgYXV0aG9yOiBUZXh0RmllbGQ7XG4gICAgdXBsb2FkZWQ6IERhdGVUaW1lRmllbGQ7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LXdvcmtmbG93LXBhbmVsJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RXb3JrZmxvd1BhbmVsQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RQYW5lbFdpdGhIZWFkZXJCaW5kaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KCkgcHVibGljIHdvcmtmbG93OiBOZXQ7XG4gICAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkSGVhZGVycyQ6IE9ic2VydmFibGU8QXJyYXk8SGVhZGVyQ29sdW1uPj47XG4gICAgQElucHV0KCkgcmVzcG9uc2l2ZUJvZHkgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHNob3dEZWxldGVNZW51ID0gZmFsc2U7XG4gICAgcHVibGljIHBhbmVsUmVmOiBNYXRFeHBhbnNpb25QYW5lbDtcbiAgICBwdWJsaWMgcGFuZWxDb250ZW50OiBXb3JrZmxvd1BhbmVsQ29udGVudDtcbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFRSQU5TTEFUSU9OX05FVCA9ICdwYW5lbC53b3JrZmxvdy5uZXQnO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgVFJBTlNMQVRJT05fVElUTEUgPSAncGFuZWwud29ya2Zsb3cudGl0bGUnO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgVFJBTlNMQVRJT05fVkVSU0lPTiA9ICdwYW5lbC53b3JrZmxvdy52ZXJzaW9uJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IFRSQU5TTEFUSU9OX0FVVEhPUiA9ICdwYW5lbC53b3JrZmxvdy5hdXRob3InO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgVFJBTlNMQVRJT05fVVBMT0FEID0gJ3BhbmVsLndvcmtmbG93LnVwbG9hZCc7XG5cbiAgICBwcm90ZWN0ZWQgZGF0YUZpZWxkc0JlaGF2aW91cjogQmVoYXZpb3IgPSB7dmlzaWJsZTogdHJ1ZSwgZWRpdGFibGU6IGZhbHNlfTtcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfd29ya2Zsb3dTZXJ2aWNlOiBXb3JrZmxvd1ZpZXdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3BldHJpTmV0UmVzb3VyY2U6IFBldHJpTmV0UmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgX292ZXJmbG93U2VydmljZTogT3ZlcmZsb3dTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKF9vdmVyZmxvd1NlcnZpY2UpO1xuXG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IF90cmFuc2xhdGUub25MYW5nQ2hhbmdlLnN1YnNjcmliZSgoZXZlbnQ6IFRyYW5zbGF0aW9uQ2hhbmdlRXZlbnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMucGFuZWxDb250ZW50Lm5ldElkZW50aWZpZXIudGl0bGUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX05FVCk7XG4gICAgICAgICAgICB0aGlzLnBhbmVsQ29udGVudC50aXRsZS50aXRsZSA9IHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KHRoaXMuVFJBTlNMQVRJT05fVElUTEUpO1xuICAgICAgICAgICAgdGhpcy5wYW5lbENvbnRlbnQudmVyc2lvbi50aXRsZSA9IHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KHRoaXMuVFJBTlNMQVRJT05fVkVSU0lPTik7XG4gICAgICAgICAgICB0aGlzLnBhbmVsQ29udGVudC5hdXRob3IudGl0bGUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX0FVVEhPUik7XG4gICAgICAgICAgICB0aGlzLnBhbmVsQ29udGVudC51cGxvYWRlZC50aXRsZSA9IHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KHRoaXMuVFJBTlNMQVRJT05fVVBMT0FEKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMucGFuZWxDb250ZW50ID0gdGhpcy5jcmVhdGVQYW5lbENvbnRlbnQoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3coZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29sbGFwc2UoKSB7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFBhbmVsUmVmKHBhbmVsUmVmOiBNYXRFeHBhbnNpb25QYW5lbCkge1xuICAgICAgICB0aGlzLnBhbmVsUmVmID0gcGFuZWxSZWY7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGFuZGxlcyB0aGUgbG9naWMgdGhhdCBzaG91bGQgYmUgZXhlY3V0ZWQgd2hlbiB0aGUgXCJkZWxldGUgd29ya2Zsb3dcIiBidXR0b24gaXMgY2xpY2tlZC5cbiAgICAgKlxuICAgICAqIENhbGxzIHRoZSBhcHByb3ByaWF0ZSBtZXRob2QgaW4gdGhlIHtAbGluayBXb3JrZmxvd1ZpZXdTZXJ2aWNlfS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGVsZXRlV29ya2Zsb3coKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3dvcmtmbG93U2VydmljZS5kZWxldGVXb3JrZmxvdyh0aGlzLndvcmtmbG93KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIHRoZSBsb2dpYyB0aGF0IHNob3VsZCBiZSBleGVjdXRlZCB3aGVuIHRoZSBcImRvd25sb2FkIHdvcmtmbG93XCIgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAgICpcbiAgICAgKiBDYWxscyB0aGUgYXBwcm9wcmlhdGUgbWV0aG9kIGluIHRoZSB7QGxpbmsgV29ya2Zsb3dWaWV3U2VydmljZX0uXG4gICAgICovXG4gICAgcHVibGljIGRvd25sb2FkTmV0RmlsZSgpIHtcbiAgICAgICAgdGhpcy5fcGV0cmlOZXRSZXNvdXJjZS5nZXROZXRGaWxlKHRoaXMud29ya2Zsb3cuc3RyaW5nSWQpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICBpZiAoIShyZXNwb25zZSBhcyBQcm92aWRlclByb2dyZXNzKS50eXBlIHx8IChyZXNwb25zZSBhcyBQcm92aWRlclByb2dyZXNzKS50eXBlICE9PSBQcm9ncmVzc1R5cGUuRE9XTkxPQUQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZGVidWcoYEZpbGUgJHt0aGlzLndvcmtmbG93LmlkZW50aWZpZXJ9IHdhcyBzdWNjZXNzZnVsbHkgZG93bmxvYWRlZGApO1xuICAgICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRWaWFBbmNob3IocmVzcG9uc2UgYXMgQmxvYik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcihgRG93bmxvYWRpbmcgZmlsZSAke3RoaXMud29ya2Zsb3cuaWRlbnRpZmllcn0gaGFzIGZhaWxlZCFgLCBlcnJvcik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBkb3dubG9hZFZpYUFuY2hvcihibG9iOiBCbG9iKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XG4gICAgICAgIGEuc2V0QXR0cmlidXRlKCdzdHlsZScsICdkaXNwbGF5OiBub25lJyk7XG4gICAgICAgIGJsb2IgPSBuZXcgQmxvYihbYmxvYl0sIHt0eXBlOiBibG9iLnR5cGV9KTtcblxuICAgICAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbiAgICAgICAgYS5ocmVmID0gdXJsO1xuICAgICAgICBhLmRvd25sb2FkID0gdGhpcy53b3JrZmxvdy5pZGVudGlmaWVyO1xuICAgICAgICBhLmNsaWNrKCk7XG4gICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUG9wdWxhdGUgZGF0YSBmaWVsZHMgZ3JvdXAgZm9yIGV2ZXJ5IHBldHJpIG5ldCBtb2RlbFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBjcmVhdGVQYW5lbENvbnRlbnQoKTogV29ya2Zsb3dQYW5lbENvbnRlbnQge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmV0SWRlbnRpZmllcjogbmV3IFRleHRGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9ORVQpLFxuICAgICAgICAgICAgICAgIHRoaXMud29ya2Zsb3cuaWRlbnRpZmllciwgdGhpcy5kYXRhRmllbGRzQmVoYXZpb3VyKSxcbiAgICAgICAgICAgIHRpdGxlOiBuZXcgVGV4dEZpZWxkKCcnLCB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCh0aGlzLlRSQU5TTEFUSU9OX1RJVExFKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LnRpdGxlLCB0aGlzLmRhdGFGaWVsZHNCZWhhdmlvdXIpLFxuICAgICAgICAgICAgdmVyc2lvbjogbmV3IFRleHRGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9WRVJTSU9OKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LnZlcnNpb24sIHRoaXMuZGF0YUZpZWxkc0JlaGF2aW91ciksXG4gICAgICAgICAgICBhdXRob3I6IG5ldyBUZXh0RmllbGQoJycsIHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KHRoaXMuVFJBTlNMQVRJT05fQVVUSE9SKSxcbiAgICAgICAgICAgICAgICB0aGlzLndvcmtmbG93LmF1dGhvci5mdWxsTmFtZSwgdGhpcy5kYXRhRmllbGRzQmVoYXZpb3VyKSxcbiAgICAgICAgICAgIHVwbG9hZGVkOiBuZXcgRGF0ZVRpbWVGaWVsZCgnJywgdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQodGhpcy5UUkFOU0xBVElPTl9VUExPQUQpLFxuICAgICAgICAgICAgICAgIHRvTW9tZW50KHRoaXMud29ya2Zsb3cuY3JlYXRlZERhdGUpLCB0aGlzLmRhdGFGaWVsZHNCZWhhdmlvdXIpXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlc29sdmVGZWF0dXJlZEZpZWxkc1ZhbHVlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9sYXN0U2VsZWN0ZWRIZWFkZXJzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZlYXR1cmVkRmllbGRzVmFsdWVzLnNwbGljZSgwLCB0aGlzLmZlYXR1cmVkRmllbGRzVmFsdWVzLmxlbmd0aCk7XG4gICAgICAgIHRoaXMuX2xhc3RTZWxlY3RlZEhlYWRlcnMuZm9yRWFjaChoZWFkZXIgPT4ge1xuICAgICAgICAgICAgdGhpcy5mZWF0dXJlZEZpZWxkc1ZhbHVlcy5wdXNoKHRoaXMuZ2V0RmVhdHVyZWRWYWx1ZShoZWFkZXIpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZlYXR1cmVkTWV0YVZhbHVlKHNlbGVjdGVkSGVhZGVyOiBIZWFkZXJDb2x1bW4pOiBGZWF0dXJlZFZhbHVlIHtcbiAgICAgICAgc3dpdGNoIChzZWxlY3RlZEhlYWRlci5maWVsZElkZW50aWZpZXIpIHtcbiAgICAgICAgICAgIGNhc2UgV29ya2Zsb3dNZXRhRmllbGQuSU5JVElBTFM6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy5pbml0aWFscywgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFdvcmtmbG93TWV0YUZpZWxkLlRJVExFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMud29ya2Zsb3cudGl0bGUsIGljb246ICcnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBXb3JrZmxvd01ldGFGaWVsZC5ORVRfSUQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy5zdHJpbmdJZCwgaWNvbjogJycsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgICAgICBjYXNlIFdvcmtmbG93TWV0YUZpZWxkLlZFUlNJT046XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogdGhpcy53b3JrZmxvdy52ZXJzaW9uLCBpY29uOiAnJywgdHlwZTogJ21ldGEnfTtcbiAgICAgICAgICAgIGNhc2UgV29ya2Zsb3dNZXRhRmllbGQuQVVUSE9SOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRoaXMud29ya2Zsb3cuYXV0aG9yLmZ1bGxOYW1lLCBpY29uOiAnYWNjb3VudF9jaXJjbGUnLCB0eXBlOiAnbWV0YSd9O1xuICAgICAgICAgICAgY2FzZSBXb3JrZmxvd01ldGFGaWVsZC5DUkVBVElPTl9EQVRFOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IHRvTW9tZW50KHRoaXMud29ya2Zsb3cuY3JlYXRlZERhdGUpLmZvcm1hdChEQVRFX1RJTUVfRk9STUFUX1NUUklORyksIGljb246ICdldmVudCcsIHR5cGU6ICdtZXRhJ307XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RmVhdHVyZWRJbW1lZGlhdGVWYWx1ZShzZWxlY3RlZEhlYWRlcjogSGVhZGVyQ29sdW1uKTogRmVhdHVyZWRWYWx1ZSB7XG4gICAgICAgIHRoaXMuX2xvZy53YXJuKCdJbW1lZGlhdGUgZGF0YSBpbiB3b3JrZmxvdyBwYW5lbCBoZWFkZXJzIGFyZSBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCcpO1xuICAgICAgICByZXR1cm4ge3ZhbHVlOiAnJywgaWNvbjogJycsIHR5cGU6ICcnfTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
export const publicFactoryResolver = (userService, sessionService, authService, router, publicResolverService, privateService, publicService) => {
|
|
1
|
+
export const publicFactoryResolver = (userService, sessionService, authService, router, publicResolverService, privateService, publicService, redirectService, url) => {
|
|
2
2
|
if (!sessionService.isInitialized) {
|
|
3
3
|
publicResolverService.url = router.url;
|
|
4
|
-
|
|
4
|
+
if (url === undefined) {
|
|
5
|
+
router.navigate(['/public-resolver'], { queryParams: redirectService.queryParams });
|
|
6
|
+
}
|
|
7
|
+
else {
|
|
8
|
+
router.navigate([url], { queryParams: redirectService.queryParams });
|
|
9
|
+
}
|
|
5
10
|
}
|
|
6
11
|
else if (authService.isAuthenticated && userService.user.id !== '' && userService.user.email !== 'anonymous@netgrif.com') {
|
|
7
12
|
return privateService;
|
|
@@ -10,4 +15,4 @@ export const publicFactoryResolver = (userService, sessionService, authService,
|
|
|
10
15
|
return publicService;
|
|
11
16
|
}
|
|
12
17
|
};
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWZhY3RvcnktcmVzb2x2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3B1YmxpYy9mYWN0b3JpZXMvcHVibGljLWZhY3RvcnktcmVzb2x2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxXQUF3QixFQUFFLGNBQThCLEVBQUUsV0FBa0MsRUFDNUYsTUFBYyxFQUFFLHFCQUErQyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQzlGLGVBQWdDLEVBQUUsR0FBWSxFQUFFLEVBQUU7SUFDcEYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUU7UUFDL0IscUJBQXFCLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDdkMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1lBQ25CLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxXQUFXLEVBQUMsQ0FBQyxDQUFDO1NBQ3JGO2FBQU07WUFDSCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBQyxXQUFXLEVBQUUsZUFBZSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQUM7U0FDdEU7S0FDSjtTQUFNLElBQUksV0FBVyxDQUFDLGVBQWUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssdUJBQXVCLEVBQUU7UUFDeEgsT0FBTyxjQUFjLENBQUM7S0FDekI7U0FBTTtRQUNILE9BQU8sYUFBYSxDQUFDO0tBQ3hCO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1VzZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi91c2VyL3NlcnZpY2VzL3VzZXIuc2VydmljZSc7XG5pbXBvcnQge1Nlc3Npb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9hdXRoZW50aWNhdGlvbi9zZXNzaW9uL3NlcnZpY2VzL3Nlc3Npb24uc2VydmljZSc7XG5pbXBvcnQge0F1dGhlbnRpY2F0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vYXV0aGVudGljYXRpb24vc2VydmljZXMvYXV0aGVudGljYXRpb24vYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5pbXBvcnQge1B1YmxpY1VybFJlc29sdmVyU2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMvcHVibGljLXVybC1yZXNvbHZlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3JvdXRpbmcvcmVkaXJlY3Qtc2VydmljZS9yZWRpcmVjdC5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IHB1YmxpY0ZhY3RvcnlSZXNvbHZlciA9ICh1c2VyU2VydmljZTogVXNlclNlcnZpY2UsIHNlc3Npb25TZXJ2aWNlOiBTZXNzaW9uU2VydmljZSwgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyOiBSb3V0ZXIsIHB1YmxpY1Jlc29sdmVyU2VydmljZTogUHVibGljVXJsUmVzb2x2ZXJTZXJ2aWNlLCBwcml2YXRlU2VydmljZSwgcHVibGljU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3RTZXJ2aWNlOiBSZWRpcmVjdFNlcnZpY2UsIHVybD86IHN0cmluZykgPT4ge1xuICAgIGlmICghc2Vzc2lvblNlcnZpY2UuaXNJbml0aWFsaXplZCkge1xuICAgICAgICBwdWJsaWNSZXNvbHZlclNlcnZpY2UudXJsID0gcm91dGVyLnVybDtcbiAgICAgICAgaWYgKHVybCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByb3V0ZXIubmF2aWdhdGUoWycvcHVibGljLXJlc29sdmVyJ10sIHtxdWVyeVBhcmFtczogcmVkaXJlY3RTZXJ2aWNlLnF1ZXJ5UGFyYW1zfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByb3V0ZXIubmF2aWdhdGUoW3VybF0sIHtxdWVyeVBhcmFtczogcmVkaXJlY3RTZXJ2aWNlLnF1ZXJ5UGFyYW1zfSk7XG4gICAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGF1dGhTZXJ2aWNlLmlzQXV0aGVudGljYXRlZCAmJiB1c2VyU2VydmljZS51c2VyLmlkICE9PSAnJyAmJiB1c2VyU2VydmljZS51c2VyLmVtYWlsICE9PSAnYW5vbnltb3VzQG5ldGdyaWYuY29tJykge1xuICAgICAgICByZXR1cm4gcHJpdmF0ZVNlcnZpY2U7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHB1YmxpY1NlcnZpY2U7XG4gICAgfVxufTtcblxuIl19
|
|
@@ -73,9 +73,17 @@ export class PetriNetResourceService extends AbstractResourceService {
|
|
|
73
73
|
*
|
|
74
74
|
* **Request URL:** {{baseUrl}}/api/petrinet/{netId}/file
|
|
75
75
|
*/
|
|
76
|
-
getNetFile(netId
|
|
77
|
-
return this._resourceProvider.
|
|
78
|
-
|
|
76
|
+
getNetFile(netId) {
|
|
77
|
+
return this._resourceProvider.getBlob$('petrinet/' + netId + '/file', this.SERVER_URL).pipe(map(event => {
|
|
78
|
+
switch (event.type) {
|
|
79
|
+
case HttpEventType.DownloadProgress:
|
|
80
|
+
return ResourceProvider.getProgress(event);
|
|
81
|
+
case HttpEventType.Response:
|
|
82
|
+
return event.body;
|
|
83
|
+
default:
|
|
84
|
+
return undefined;
|
|
85
|
+
}
|
|
86
|
+
}), filter(value => !!value));
|
|
79
87
|
}
|
|
80
88
|
/**
|
|
81
89
|
* get One Net
|
|
@@ -151,4 +159,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
151
159
|
providedIn: 'root'
|
|
152
160
|
}]
|
|
153
161
|
}], ctorParameters: function () { return [{ type: i1.ResourceProvider }, { type: i2.ConfigurationService }]; } });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV0cmktbmV0LXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvcGV0cmktbmV0LXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQTJCLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFHeEYsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQU0vRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQzs7OztBQU12RixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO0lBRWhFLFlBQVksUUFBMEIsRUFBRSxhQUFtQztRQUN2RSxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE1BQWU7UUFDekIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQzthQUNsRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLGVBQWUsQ0FB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QUFTLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7O3FIQXZKUSx1QkFBdUI7eUhBQXZCLHVCQUF1QixjQUZwQixNQUFNOzRGQUVULHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQZXRyaU5ldH0gZnJvbSAnLi4vaW50ZXJmYWNlL3BldHJpLW5ldCc7XG5pbXBvcnQge1BhcmFtcywgUHJvdmlkZXJQcm9ncmVzcywgUmVzb3VyY2VQcm92aWRlcn0gZnJvbSAnLi4vcmVzb3VyY2UtcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQge0NvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgVHJhbnNpdGlvbiBmcm9tICcuLi8uLi9wcm9jZXNzL3RyYW5zaXRpb24nO1xuaW1wb3J0IHtIdHRwRXZlbnRUeXBlLCBIdHRwUGFyYW1zfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgVHJhbnNhY3Rpb24gZnJvbSAnLi4vLi4vcHJvY2Vzcy90cmFuc2FjdGlvbic7XG5pbXBvcnQge0V2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZSwgTWVzc2FnZVJlc291cmNlfSBmcm9tICcuLi9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge1BldHJpTmV0UmVmZXJlbmNlfSBmcm9tICcuLi9pbnRlcmZhY2UvcGV0cmktbmV0LXJlZmVyZW5jZSc7XG5pbXBvcnQge1BldHJpTmV0UmVxdWVzdEJvZHl9IGZyb20gJy4uL2ludGVyZmFjZS9wZXRyaS1uZXQtcmVxdWVzdC1ib2R5JztcbmltcG9ydCB7UGFnZX0gZnJvbSAnLi4vaW50ZXJmYWNlL3BhZ2UnO1xuaW1wb3J0IHtwcm9jZXNzTWVzc2FnZVJlc3BvbnNlfSBmcm9tICcuLi8uLi91dGlsaXR5L3Byb2Nlc3MtbWVzc2FnZS1yZXNwb25zZSc7XG5pbXBvcnQge0Fic3RyYWN0UmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi9hYnN0cmFjdC1lbmRwb2ludC9hYnN0cmFjdC1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCBSb2xlc0FuZFBlcm1pc3Npb25zIGZyb20gJy4uLy4uL3Byb2Nlc3Mvcm9sZXNBbmRQZXJtaXNzaW9ucyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUGV0cmlOZXRSZXNvdXJjZVNlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdFJlc291cmNlU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm92aWRlcjogUmVzb3VyY2VQcm92aWRlciwgY29uZmlnU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoJ3BldHJpbmV0JywgcHJvdmlkZXIsIGNvbmZpZ1NlcnZpY2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBBbGwgVXNpbmcgUGV0cmkgTmV0XG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0XG4gICAgICovXG4gICAgcHVibGljIGdldEFsbChwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPEFycmF5PFBldHJpTmV0UmVmZXJlbmNlPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCdwZXRyaW5ldCcsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICdwZXRyaU5ldFJlZmVyZW5jZXMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBEYXRhIEZpZWxkIFJlZmVyZW5jZXMgVXNpbmdcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIFBPU1RcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L2RhdGFcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RGF0YVBldHJpTmV0KGJvZHk6IG9iamVjdCk6IE9ic2VydmFibGU8YW55PiB7ICAvLyBUT0RPOiByZXNwb25zZVxuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5wb3N0JCgncGV0cmluZXQvZGF0YScsIHRoaXMuU0VSVkVSX1VSTCwgYm9keSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IFRyYW5zaXRpb24gUmVmZXJlbmNlcyBVc2luZ1xuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogR0VUXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVVJMOioqIHt7YmFzZVVybH19L2FwaS9wZXRyaW5ldC90cmFuc2l0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRQZXRyaU5ldFRyYW5zaXRpb25zKG5ldElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5PFRyYW5zaXRpb24+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldCQoJy9wZXRyaW5ldC90cmFuc2l0aW9ucycsIHRoaXMuU0VSVkVSX1VSTCwgbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkcycsIG5ldElkKSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAndHJhbnNpdGlvblJlZmVyZW5jZXMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBUcmFuc2FjdGlvbiBSZWZlcmVuY2VzIFVzaW5nXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tpZH0vdHJhbnNhY3Rpb25zXG4gICAgICovXG4gICAgcHVibGljIGdldFBldHJpTmV0VHJhbnNhY3Rpb25zKG5ldElkOiBzdHJpbmcsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8QXJyYXk8VHJhbnNhY3Rpb24+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldCQoJy9wZXRyaW5ldC8nICsgbmV0SWQgKyAnL3RyYW5zYWN0aW9ucycsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICd0cmFuc2FjdGlvbnMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBSb2xlcyBSZWZlcmVuY2VzIFVzaW5nXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tpZH0vcm9sZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UGV0cmlOZXRSb2xlcyhuZXRJZDogc3RyaW5nLCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFJvbGVzQW5kUGVybWlzc2lvbnM+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0JCgnL3BldHJpbmV0LycgKyBuZXRJZCArICcvcm9sZXMnLCB0aGlzLlNFUlZFUl9VUkwsIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0IE5ldCBGaWxlXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tuZXRJZH0vZmlsZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROZXRGaWxlKG5ldElkOiBzdHJpbmcsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8YW55PiB7ICAvLyBUT0RPOiByZXNwb25zZVxuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCdwZXRyaW5ldC8nICsgbmV0SWQgKyAnL2ZpbGUnLCB0aGlzLlNFUlZFUl9VUkwsIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0IE9uZSBOZXRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIEdFVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQve2lkZW50aWZpZXJ9L3t2ZXJzaW9ufVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRPbmUoaWRlbnRpZmllcjogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8UGV0cmlOZXRSZWZlcmVuY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0JCgncGV0cmluZXQvJyArIGJ0b2EoaWRlbnRpZmllcikgKyAnLycgKyB2ZXJzaW9uLCB0aGlzLlNFUlZFUl9VUkwsIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAncGV0cmlOZXRSZWZlcmVuY2VzJykpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXQgT25lIE5ldCBieSBJRFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogR0VUXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVVJMOioqIHt7YmFzZVVybH19L2FwaS9wZXRyaW5ldC97aWR9XG4gICAgICovXG4gICAgcHVibGljIGdldE9uZUJ5SWQobmV0SWQ6IHN0cmluZywgcGFyYW1zPzogUGFyYW1zKTogT2JzZXJ2YWJsZTxQZXRyaU5ldD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCdwZXRyaW5ldC8nICsgbmV0SWQsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpKTtcbiAgICB9XG5cblxuICAgIC8qKlxuICAgICAqIGltcG9ydCBQZXRyaU5ldFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogUE9TVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQvaW1wb3J0XG4gICAgICovXG4gICAgcHVibGljIGltcG9ydFBldHJpTmV0KGJvZHk6IEZvcm1EYXRhLCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFByb3ZpZGVyUHJvZ3Jlc3MgfCBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIucG9zdFdpdGhFdmVudCQ8TWVzc2FnZVJlc291cmNlPigncGV0cmluZXQvaW1wb3J0JywgdGhpcy5TRVJWRVJfVVJMLCBib2R5LCBwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VQcm92aWRlci5nZXRQcm9ncmVzcyhldmVudCk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5SZXNwb25zZTpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZVByb3ZpZGVyLnByb2Nlc3NNZXNzYWdlUmVzb3VyY2UoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGZpbHRlcih2YWx1ZSA9PiAhIXZhbHVlKVxuICAgICAgICApO1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogc2VhcmNoIFBldHJpTmV0c1xuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogUE9TVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQvc2VhcmNoXG4gICAgICovXG4gICAgcHVibGljIHNlYXJjaFBldHJpTmV0cyhib2R5OiBQZXRyaU5ldFJlcXVlc3RCb2R5LCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFBhZ2U8UGV0cmlOZXRSZWZlcmVuY2U+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLnBvc3QkKCdwZXRyaW5ldC9zZWFyY2gnLCB0aGlzLlNFUlZFUl9VUkwsIGJvZHksIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuZ2V0UmVzb3VyY2VQYWdlPFBldHJpTmV0UmVmZXJlbmNlPihyLCAncGV0cmlOZXRSZWZlcmVuY2VzJykpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBkZWxldGUgUGV0cmlOZXRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIERFTEVURVxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQve2lkfVxuICAgICAqXG4gICAgICogQHBhcmFtIG5ldElkIHN0cmluZ0lkIG9mIHRoZSBkZWxldGVkIFBldHJpIE5ldFxuICAgICAqL1xuICAgIHB1YmxpYyBkZWxldGVQZXRyaU5ldChuZXRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZGVsZXRlJDxNZXNzYWdlUmVzb3VyY2U+KCdwZXRyaW5ldC8nICsgbmV0SWQsIHRoaXMuU0VSVkVSX1VSTClcbiAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcChwcm9jZXNzTWVzc2FnZVJlc3BvbnNlKSk7XG4gICAgfVxufVxuIl19
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGV0cmktbmV0LXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvcGV0cmktbmV0LXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQTJCLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFHeEYsT0FBTyxFQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQU0vRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQzs7OztBQU12RixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO0lBRWhFLFlBQVksUUFBMEIsRUFBRSxhQUFtQztRQUN2RSxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE1BQWU7UUFDekIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQzthQUNsRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLGVBQWUsQ0FB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QUFDLGVBQWUsQ0FBb0IsQ0FBQyxFQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLGNBQWMsQ0FBQyxLQUFhO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBa0IsV0FBVyxHQUFHLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3ZGLElBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7O3FIQWxLUSx1QkFBdUI7eUhBQXZCLHVCQUF1QixjQUZwQixNQUFNOzRGQUVULHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQZXRyaU5ldH0gZnJvbSAnLi4vaW50ZXJmYWNlL3BldHJpLW5ldCc7XG5pbXBvcnQge1BhcmFtcywgUHJvdmlkZXJQcm9ncmVzcywgUmVzb3VyY2VQcm92aWRlcn0gZnJvbSAnLi4vcmVzb3VyY2UtcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQge0NvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgVHJhbnNpdGlvbiBmcm9tICcuLi8uLi9wcm9jZXNzL3RyYW5zaXRpb24nO1xuaW1wb3J0IHtIdHRwRXZlbnRUeXBlLCBIdHRwUGFyYW1zfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgVHJhbnNhY3Rpb24gZnJvbSAnLi4vLi4vcHJvY2Vzcy90cmFuc2FjdGlvbic7XG5pbXBvcnQge0V2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZSwgTWVzc2FnZVJlc291cmNlfSBmcm9tICcuLi9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge1BldHJpTmV0UmVmZXJlbmNlfSBmcm9tICcuLi9pbnRlcmZhY2UvcGV0cmktbmV0LXJlZmVyZW5jZSc7XG5pbXBvcnQge1BldHJpTmV0UmVxdWVzdEJvZHl9IGZyb20gJy4uL2ludGVyZmFjZS9wZXRyaS1uZXQtcmVxdWVzdC1ib2R5JztcbmltcG9ydCB7UGFnZX0gZnJvbSAnLi4vaW50ZXJmYWNlL3BhZ2UnO1xuaW1wb3J0IHtwcm9jZXNzTWVzc2FnZVJlc3BvbnNlfSBmcm9tICcuLi8uLi91dGlsaXR5L3Byb2Nlc3MtbWVzc2FnZS1yZXNwb25zZSc7XG5pbXBvcnQge0Fic3RyYWN0UmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi9hYnN0cmFjdC1lbmRwb2ludC9hYnN0cmFjdC1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCBSb2xlc0FuZFBlcm1pc3Npb25zIGZyb20gJy4uLy4uL3Byb2Nlc3Mvcm9sZXNBbmRQZXJtaXNzaW9ucyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUGV0cmlOZXRSZXNvdXJjZVNlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdFJlc291cmNlU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm92aWRlcjogUmVzb3VyY2VQcm92aWRlciwgY29uZmlnU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoJ3BldHJpbmV0JywgcHJvdmlkZXIsIGNvbmZpZ1NlcnZpY2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBBbGwgVXNpbmcgUGV0cmkgTmV0XG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0XG4gICAgICovXG4gICAgcHVibGljIGdldEFsbChwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPEFycmF5PFBldHJpTmV0UmVmZXJlbmNlPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCdwZXRyaW5ldCcsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICdwZXRyaU5ldFJlZmVyZW5jZXMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBEYXRhIEZpZWxkIFJlZmVyZW5jZXMgVXNpbmdcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIFBPU1RcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L2RhdGFcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RGF0YVBldHJpTmV0KGJvZHk6IG9iamVjdCk6IE9ic2VydmFibGU8YW55PiB7ICAvLyBUT0RPOiByZXNwb25zZVxuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5wb3N0JCgncGV0cmluZXQvZGF0YScsIHRoaXMuU0VSVkVSX1VSTCwgYm9keSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IFRyYW5zaXRpb24gUmVmZXJlbmNlcyBVc2luZ1xuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogR0VUXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVVJMOioqIHt7YmFzZVVybH19L2FwaS9wZXRyaW5ldC90cmFuc2l0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRQZXRyaU5ldFRyYW5zaXRpb25zKG5ldElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFycmF5PFRyYW5zaXRpb24+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldCQoJy9wZXRyaW5ldC90cmFuc2l0aW9ucycsIHRoaXMuU0VSVkVSX1VSTCwgbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkcycsIG5ldElkKSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAndHJhbnNpdGlvblJlZmVyZW5jZXMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBUcmFuc2FjdGlvbiBSZWZlcmVuY2VzIFVzaW5nXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tpZH0vdHJhbnNhY3Rpb25zXG4gICAgICovXG4gICAgcHVibGljIGdldFBldHJpTmV0VHJhbnNhY3Rpb25zKG5ldElkOiBzdHJpbmcsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8QXJyYXk8VHJhbnNhY3Rpb24+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldCQoJy9wZXRyaW5ldC8nICsgbmV0SWQgKyAnL3RyYW5zYWN0aW9ucycsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICd0cmFuc2FjdGlvbnMnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBSb2xlcyBSZWZlcmVuY2VzIFVzaW5nXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tpZH0vcm9sZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UGV0cmlOZXRSb2xlcyhuZXRJZDogc3RyaW5nLCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFJvbGVzQW5kUGVybWlzc2lvbnM+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0JCgnL3BldHJpbmV0LycgKyBuZXRJZCArICcvcm9sZXMnLCB0aGlzLlNFUlZFUl9VUkwsIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0IE5ldCBGaWxlXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVHlwZToqKiBHRVRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBVUkw6Kioge3tiYXNlVXJsfX0vYXBpL3BldHJpbmV0L3tuZXRJZH0vZmlsZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROZXRGaWxlKG5ldElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb3ZpZGVyUHJvZ3Jlc3MgfCBCbG9iPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldEJsb2IkKCdwZXRyaW5ldC8nICsgbmV0SWQgKyAnL2ZpbGUnLCB0aGlzLlNFUlZFUl9VUkwpLnBpcGUoXG4gICAgICAgICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzczpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZVByb3ZpZGVyLmdldFByb2dyZXNzKGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlJlc3BvbnNlOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LmJvZHk7XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0IE9uZSBOZXRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIEdFVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQve2lkZW50aWZpZXJ9L3t2ZXJzaW9ufVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRPbmUoaWRlbnRpZmllcjogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8UGV0cmlOZXRSZWZlcmVuY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0JCgncGV0cmluZXQvJyArIGJ0b2EoaWRlbnRpZmllcikgKyAnLycgKyB2ZXJzaW9uLCB0aGlzLlNFUlZFUl9VUkwsIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAncGV0cmlOZXRSZWZlcmVuY2VzJykpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXQgT25lIE5ldCBieSBJRFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogR0VUXG4gICAgICpcbiAgICAgKiAqKlJlcXVlc3QgVVJMOioqIHt7YmFzZVVybH19L2FwaS9wZXRyaW5ldC97aWR9XG4gICAgICovXG4gICAgcHVibGljIGdldE9uZUJ5SWQobmV0SWQ6IHN0cmluZywgcGFyYW1zPzogUGFyYW1zKTogT2JzZXJ2YWJsZTxQZXRyaU5ldD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXQkKCdwZXRyaW5ldC8nICsgbmV0SWQsIHRoaXMuU0VSVkVSX1VSTCwgcGFyYW1zKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpKTtcbiAgICB9XG5cblxuICAgIC8qKlxuICAgICAqIGltcG9ydCBQZXRyaU5ldFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogUE9TVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQvaW1wb3J0XG4gICAgICovXG4gICAgcHVibGljIGltcG9ydFBldHJpTmV0KGJvZHk6IEZvcm1EYXRhLCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFByb3ZpZGVyUHJvZ3Jlc3MgfCBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIucG9zdFdpdGhFdmVudCQ8TWVzc2FnZVJlc291cmNlPigncGV0cmluZXQvaW1wb3J0JywgdGhpcy5TRVJWRVJfVVJMLCBib2R5LCBwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VQcm92aWRlci5nZXRQcm9ncmVzcyhldmVudCk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5SZXNwb25zZTpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZVByb3ZpZGVyLnByb2Nlc3NNZXNzYWdlUmVzb3VyY2UoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGZpbHRlcih2YWx1ZSA9PiAhIXZhbHVlKVxuICAgICAgICApO1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogc2VhcmNoIFBldHJpTmV0c1xuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFR5cGU6KiogUE9TVFxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQvc2VhcmNoXG4gICAgICovXG4gICAgcHVibGljIHNlYXJjaFBldHJpTmV0cyhib2R5OiBQZXRyaU5ldFJlcXVlc3RCb2R5LCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFBhZ2U8UGV0cmlOZXRSZWZlcmVuY2U+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLnBvc3QkKCdwZXRyaW5ldC9zZWFyY2gnLCB0aGlzLlNFUlZFUl9VUkwsIGJvZHksIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuZ2V0UmVzb3VyY2VQYWdlPFBldHJpTmV0UmVmZXJlbmNlPihyLCAncGV0cmlOZXRSZWZlcmVuY2VzJykpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBkZWxldGUgUGV0cmlOZXRcbiAgICAgKlxuICAgICAqICoqUmVxdWVzdCBUeXBlOioqIERFTEVURVxuICAgICAqXG4gICAgICogKipSZXF1ZXN0IFVSTDoqKiB7e2Jhc2VVcmx9fS9hcGkvcGV0cmluZXQve2lkfVxuICAgICAqXG4gICAgICogQHBhcmFtIG5ldElkIHN0cmluZ0lkIG9mIHRoZSBkZWxldGVkIFBldHJpIE5ldFxuICAgICAqL1xuICAgIHB1YmxpYyBkZWxldGVQZXRyaU5ldChuZXRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZGVsZXRlJDxNZXNzYWdlUmVzb3VyY2U+KCdwZXRyaW5ldC8nICsgbmV0SWQsIHRoaXMuU0VSVkVSX1VSTClcbiAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcChwcm9jZXNzTWVzc2FnZVJlc3BvbnNlKSk7XG4gICAgfVxufVxuIl19
|
|
@@ -67,45 +67,6 @@ export class PublicTaskResourceService extends TaskResourceService {
|
|
|
67
67
|
return this._provider.get$('public/task/' + taskId + '/data', this.SERVER_URL)
|
|
68
68
|
.pipe(map(r => this.changeType(r, 'dataGroups')));
|
|
69
69
|
}
|
|
70
|
-
/**
|
|
71
|
-
* Get all task data
|
|
72
|
-
*
|
|
73
|
-
* GET
|
|
74
|
-
*
|
|
75
|
-
* If you want to process the raw backend response use [rawGetData]{@link TaskResourceService#rawGetData} instead.
|
|
76
|
-
*
|
|
77
|
-
* @param taskId ID of the task who's data should be retrieved from the server
|
|
78
|
-
* @returns processed data groups of the given task. If the task has no data an empty array will be returned.
|
|
79
|
-
*/
|
|
80
|
-
getData(taskId) {
|
|
81
|
-
return this.rawGetData(taskId).pipe(map((responseOutcome) => {
|
|
82
|
-
const dataGroupsArray = this.changeType(responseOutcome.outcome.data, 'dataGroups');
|
|
83
|
-
if (!Array.isArray(dataGroupsArray)) {
|
|
84
|
-
return [];
|
|
85
|
-
}
|
|
86
|
-
const result = [];
|
|
87
|
-
dataGroupsArray.forEach(dataGroupResource => {
|
|
88
|
-
const dataFields = [];
|
|
89
|
-
if (!dataGroupResource.fields._embedded) {
|
|
90
|
-
return; // continue
|
|
91
|
-
}
|
|
92
|
-
const fields = [];
|
|
93
|
-
Object.keys(dataGroupResource.fields._embedded).forEach(localizedFields => {
|
|
94
|
-
fields.push(...dataGroupResource.fields._embedded[localizedFields]);
|
|
95
|
-
});
|
|
96
|
-
fields.sort((a, b) => a.order - b.order);
|
|
97
|
-
dataFields.push(...fields.map(dataFieldResource => this._fieldConverter.toClass(dataFieldResource)));
|
|
98
|
-
result.push({
|
|
99
|
-
fields: dataFields,
|
|
100
|
-
stretch: dataGroupResource.stretch,
|
|
101
|
-
title: dataGroupResource.title,
|
|
102
|
-
layout: dataGroupResource.layout,
|
|
103
|
-
alignment: dataGroupResource.alignment
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
return result;
|
|
107
|
-
}));
|
|
108
|
-
}
|
|
109
70
|
/**
|
|
110
71
|
* Set task data
|
|
111
72
|
* POST
|
|
@@ -208,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
208
169
|
providedIn: 'root'
|
|
209
170
|
}]
|
|
210
171
|
}], ctorParameters: function () { return [{ type: i1.ResourceProvider }, { type: i2.ConfigurationService }, { type: i3.FieldConverterService }, { type: i4.LoggerService }]; } });
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLXRhc2stcmVzb3VyY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvcmVzb3VyY2VzL2VuZ2luZS1lbmRwb2ludC9wdWJsaWMvcHVibGljLXRhc2stcmVzb3VyY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRzdELE9BQU8sRUFBMkIsZ0JBQWdCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUczRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQVM5RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQU9uRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsbUJBQW1CO0lBRTlELFlBQXNCLFNBQTJCLEVBQzNCLGNBQW9DLEVBQ3BDLGVBQXNDLEVBQ3RDLE9BQXNCO1FBQ3hDLEtBQUssQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUp6QyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQXVCO1FBQ3RDLFlBQU8sR0FBUCxPQUFPLENBQWU7SUFFNUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHlDQUF5QztJQUNsQyxVQUFVLENBQUMsTUFBYztRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFB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Z3VsYXIvY29yZSc7XG5pbXBvcnQge1Rhc2tSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uL3Rhc2stcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge0ZpZWxkQ29udmVydGVyU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vdGFzay1jb250ZW50L3NlcnZpY2VzL2ZpZWxkLWNvbnZlcnRlci5zZXJ2aWNlJztcbmltcG9ydCB7Q29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7UGFyYW1zLCBQcm92aWRlclByb2dyZXNzLCBSZXNvdXJjZVByb3ZpZGVyfSBmcm9tICcuLi8uLi9yZXNvdXJjZS1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0ZpbHRlclR5cGV9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9tb2RlbHMvZmlsdGVyLXR5cGUnO1xuaW1wb3J0IHtGaWx0ZXJ9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9tb2RlbHMvZmlsdGVyJztcbmltcG9ydCB7UGFnZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL3BhZ2UnO1xuaW1wb3J0IHtDaGFuZ2VkRmllbGRDb250YWluZXJ9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9jaGFuZ2VkLWZpZWxkLWNvbnRhaW5lcic7XG5pbXBvcnQge1Rhc2tTZXREYXRhUmVxdWVzdEJvZHl9IGZyb20gJy4uLy4uL2ludGVyZmFjZS90YXNrLXNldC1kYXRhLXJlcXVlc3QtYm9keSc7XG5pbXBvcnQge1Rhc2tSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ludGVyZmFjZS90YXNrLXJlZmVyZW5jZSc7XG5pbXBvcnQge0RhdGFHcm91cH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL2RhdGEtZ3JvdXBzJztcbmltcG9ydCB7RGF0YUZpZWxkfSBmcm9tICcuLi8uLi8uLi9kYXRhLWZpZWxkcy9tb2RlbHMvYWJzdHJhY3QtZGF0YS1maWVsZCc7XG5pbXBvcnQge1Rhc2t9IGZyb20gJy4uLy4uL2ludGVyZmFjZS90YXNrJztcbmltcG9ydCB7SHR0cEV2ZW50VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2UsIE1lc3NhZ2VSZXNvdXJjZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL21lc3NhZ2UtcmVzb3VyY2UnO1xuaW1wb3J0IHtHZXREYXRhR3JvdXBzRXZlbnRPdXRjb21lfSBmcm9tICcuLi8uLi8uLi9ldmVudC9tb2RlbC9ldmVudC1vdXRjb21lcy9kYXRhLW91dGNvbWVzL2dldC1kYXRhLWdyb3Vwcy1ldmVudC1vdXRjb21lJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQdWJsaWNUYXNrUmVzb3VyY2VTZXJ2aWNlIGV4dGVuZHMgVGFza1Jlc291cmNlU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3Byb3ZpZGVyOiBSZXNvdXJjZVByb3ZpZGVyLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfY29uZmlnU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9maWVsZENvbnZlcnRlcjogRmllbGRDb252ZXJ0ZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKF9wcm92aWRlciwgX2NvbmZpZ1NlcnZpY2UsIF9maWVsZENvbnZlcnRlciwgX2xvZ2dlcik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQXNzaWduIHRhc2tcbiAgICAgKiBHRVRcbiAgICAgKi9cbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvcHVibGljL3Rhc2svYXNzaWduLzppZFxuICAgIHB1YmxpYyBhc3NpZ25UYXNrKHRhc2tJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyLmdldCQoJ3B1YmxpYy90YXNrL2Fzc2lnbi8nICsgdGFza0lkLCB0aGlzLlNFUlZFUl9VUkwpXG4gICAgICAgICAgICAucGlwZShtYXAociA9PiB0aGlzLmNoYW5nZVR5cGUociwgdW5kZWZpbmVkKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbmNlbCB0YXNrXG4gICAgICogR0VUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrL2NhbmNlbC86aWRcbiAgICBwdWJsaWMgY2FuY2VsVGFzayh0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm92aWRlci5nZXQkKCdwdWJsaWMvdGFzay9jYW5jZWwvJyArIHRhc2tJZCwgdGhpcy5TRVJWRVJfVVJMKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5pc2ggdGFza1xuICAgICAqIEdFVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS9wdWJsaWMvdGFzay9maW5pc2gvOmlkXG4gICAgcHVibGljIGZpbmlzaFRhc2sodGFza0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdmlkZXIuZ2V0JCgncHVibGljL3Rhc2svZmluaXNoLycgKyB0YXNrSWQsIHRoaXMuU0VSVkVSX1VSTClcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHRhc2tzIG9mIHRoZSBjYXNlXG4gICAgICogR0VUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrL2Nhc2UvOmlkXG4gICAgcHVibGljIGdldEFsbFRhc2tzQnlDYXNlKGNhc2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxBcnJheTxUYXNrUmVmZXJlbmNlPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdmlkZXIuZ2V0JCgncHVibGljL3Rhc2svY2FzZS8nICsgY2FzZUlkLCB0aGlzLlNFUlZFUl9VUkwpXG4gICAgICAgICAgICAucGlwZShtYXAociA9PiB0aGlzLmNoYW5nZVR5cGUociwgdW5kZWZpbmVkKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBhbGwgdGFzayBkYXRhXG4gICAgICpcbiAgICAgKiBHRVRcbiAgICAgKlxuICAgICAqIElmIHlvdSBkb24ndCB3YW50IHRvIHBhcnNlIHRoZSByZXNwb25zZSB5b3Vyc2VsZiB1c2UgW2dldERhdGFde0BsaW5rIFRhc2tSZXNvdXJjZVNlcnZpY2UjZ2V0RGF0YX0gaW5zdGVhZC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIHRoZSByYXcgYmFja2VuZCByZXNwb25zZSB3aXRob3V0IGFueSBhZGRpdGlvbmFsIHByb2Nlc3NpbmdcbiAgICAgKi9cbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvcHVibGljL3Rhc2svOmlkL2RhdGFcbiAgICBwdWJsaWMgcmF3R2V0RGF0YSh0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm92aWRlci5nZXQkKCdwdWJsaWMvdGFzay8nICsgdGFza0lkICsgJy9kYXRhJywgdGhpcy5TRVJWRVJfVVJMKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsICdkYXRhR3JvdXBzJykpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAgR2V0IGFsbCB0YXNrIGRhdGFcbiAgICAgKlxuICAgICAqICBHRVRcbiAgICAgKlxuICAgICAqICBJZiB5b3Ugd2FudCB0byBwcm9jZXNzIHRoZSByYXcgYmFja2VuZCByZXNwb25zZSB1c2UgW3Jhd0dldERhdGFde0BsaW5rIFRhc2tSZXNvdXJjZVNlcnZpY2UjcmF3R2V0RGF0YX0gaW5zdGVhZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0YXNrSWQgSUQgb2YgdGhlIHRhc2sgd2hvJ3MgZGF0YSBzaG91bGQgYmUgcmV0cmlldmVkIGZyb20gdGhlIHNlcnZlclxuICAgICAqIEByZXR1cm5zIHByb2Nlc3NlZCBkYXRhIGdyb3VwcyBvZiB0aGUgZ2l2ZW4gdGFzay4gSWYgdGhlIHRhc2sgaGFzIG5vIGRhdGEgYW4gZW1wdHkgYXJyYXkgd2lsbCBiZSByZXR1cm5lZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RGF0YSh0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8RGF0YUdyb3VwPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yYXdHZXREYXRhKHRhc2tJZCkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2VPdXRjb21lOiBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2UpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRhR3JvdXBzQXJyYXkgPSB0aGlzLmNoYW5nZVR5cGUoKHJlc3BvbnNlT3V0Y29tZS5vdXRjb21lIGFzIEdldERhdGFHcm91cHNFdmVudE91dGNvbWUpLmRhdGEsICdkYXRhR3JvdXBzJyk7XG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGFHcm91cHNBcnJheSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgICAgICAgICBkYXRhR3JvdXBzQXJyYXkuZm9yRWFjaChkYXRhR3JvdXBSZXNvdXJjZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhdGFGaWVsZHM6IEFycmF5PERhdGFGaWVsZDxhbnk+PiA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWRhdGFHcm91cFJlc291cmNlLmZpZWxkcy5fZW1iZWRkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsgLy8gY29udGludWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWVsZHMgPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoZGF0YUdyb3VwUmVzb3VyY2UuZmllbGRzLl9lbWJlZGRlZCkuZm9yRWFjaChsb2NhbGl6ZWRGaWVsZHMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzLnB1c2goLi4uZGF0YUdyb3VwUmVzb3VyY2UuZmllbGRzLl9lbWJlZGRlZFtsb2NhbGl6ZWRGaWVsZHNdKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkcy5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG4gICAgICAgICAgICAgICAgICAgIGRhdGFGaWVsZHMucHVzaCguLi5maWVsZHMubWFwKGRhdGFGaWVsZFJlc291cmNlID0+IHRoaXMuX2ZpZWxkQ29udmVydGVyLnRvQ2xhc3MoZGF0YUZpZWxkUmVzb3VyY2UpKSk7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkczogZGF0YUZpZWxkcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmV0Y2g6IGRhdGFHcm91cFJlc291cmNlLnN0cmV0Y2gsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogZGF0YUdyb3VwUmVzb3VyY2UudGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXQ6IGRhdGFHcm91cFJlc291cmNlLmxheW91dCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWdubWVudDogZGF0YUdyb3VwUmVzb3VyY2UuYWxpZ25tZW50XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0YXNrIGRhdGFcbiAgICAgKiBQT1NUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrLzppZC9kYXRhXG4gICAgcHVibGljIHNldERhdGEodGFza0lkOiBzdHJpbmcsIGJvZHk6IFRhc2tTZXREYXRhUmVxdWVzdEJvZHkpOiBPYnNlcnZhYmxlPEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdmlkZXIucG9zdCQoJ3B1YmxpYy90YXNrLycgKyB0YXNrSWQgKyAnL2RhdGEnLCB0aGlzLlNFUlZFUl9VUkwsIGJvZHkpXG4gICAgICAgICAgICAucGlwZShtYXAociA9PiB0aGlzLmNoYW5nZVR5cGUociwgdW5kZWZpbmVkKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlYXJjaGVzIHRhc2tzIHRyb3VnaCB0aGUgTW9uZ28gZW5kcG9pbnQuXG4gICAgICogUE9TVFxuICAgICAqIEBwYXJhbSBmaWx0ZXJQYXJhbSBmaWx0ZXIgdXNlZCB0byBzZWFyY2ggdGhlIHRhc2tzLiBNdXN0IGJlIG9mIHR5cGUgYFRBU0tgLlxuICAgICAqIE5vdGUgdGhhdCB0aGUgYHF1ZXJ5YCBhdHRyaWJ1dGUgb2YgdGhlIGZpbHRlciBjYW5ub3QgYmUgdXNlZCB3aXRoIHRoaXMgZW5kcG9pbnQuXG4gICAgICogQXR0ZW1wdGluZyB0byB1c2UgaXQgd2lsbCBkaXNwbGF5IGEgd2FybmluZyBhbmQgcmVtb3ZlIHRoZSBhdHRyaWJ1dGUgZnJvbSB0aGUgcmVxdWVzdC5cbiAgICAgKiBAcGFyYW0gcGFyYW1zIEFkZGl0aW9uYWwgcmVxdWVzdCBwYXJhbWV0ZXJzXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrL3NlYXJjaFxuICAgIHB1YmxpYyBnZXRUYXNrcyhmaWx0ZXJQYXJhbTogRmlsdGVyLCBwYXJhbXM/OiBQYXJhbXMpOiBPYnNlcnZhYmxlPFBhZ2U8VGFzaz4+IHtcbiAgICAgICAgaWYgKGZpbHRlclBhcmFtLnR5cGUgIT09IEZpbHRlclR5cGUuVEFTSykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdQcm92aWRlZCBmaWx0ZXIgZG9lc25cXCd0IGhhdmUgdHlwZSBUQVNLJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmlsdGVyUGFyYW0uYm9keUNvbnRhaW5zUXVlcnkoKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdnZXRUYXNrcyBlbmRwb2ludCBjYW5ub3QgYmUgcXVlcmllZCB3aXRoIGZpbHRlcnMgdGhhdCBjb250YWluIHRoZSBcXCdxdWVyeVxcJyBhdHRyaWJ1dGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBhcmFtcyA9IFJlc291cmNlUHJvdmlkZXIuY29tYmluZVBhcmFtcyhmaWx0ZXJQYXJhbS5nZXRSZXF1ZXN0UGFyYW1zKCksIHBhcmFtcyk7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm92aWRlci5wb3N0JCgncHVibGljL3Rhc2svc2VhcmNoJywgdGhpcy5TRVJWRVJfVVJMLCBmaWx0ZXJQYXJhbS5nZXRSZXF1ZXN0Qm9keSgpLCBwYXJhbXMpXG4gICAgICAgICAgICAucGlwZShtYXAociA9PiB0aGlzLmdldFJlc291cmNlUGFnZTxUYXNrPihyLCAndGFza3MnKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERvd25sb2FkIHRhc2sgZmlsZSBmaWVsZCB2YWx1ZVxuICAgICAqIEdFVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS90YXNrLzppZC9maWxlLzpmaWVsZCAgICAgICAgIC0gZm9yIGZpbGUgZmllbGRcbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvdGFzay86aWQvZmlsZS86ZmllbGQvOm5hbWUgICAtIGZvciBmaWxlIGxpc3QgZmllbGRcbiAgICBwdWJsaWMgZG93bmxvYWRGaWxlKHRhc2tJZDogc3RyaW5nLCBmaWVsZElkOiBzdHJpbmcsIG5hbWU/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb3ZpZGVyUHJvZ3Jlc3MgfCBCbG9iPiB7XG4gICAgICAgIGNvbnN0IHVybCA9ICEhbmFtZSA/IGBwdWJsaWMvdGFzay8ke3Rhc2tJZH0vZmlsZS8ke2ZpZWxkSWR9LyR7bmFtZX1gIDogYHB1YmxpYy90YXNrLyR7dGFza0lkfS9maWxlLyR7ZmllbGRJZH1gO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXRCbG9iJCh1cmwsIHRoaXMuU0VSVkVSX1VSTCkucGlwZShcbiAgICAgICAgICAgIG1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5Eb3dubG9hZFByb2dyZXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlUHJvdmlkZXIuZ2V0UHJvZ3Jlc3MoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuUmVzcG9uc2U6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQuYm9keTtcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBmaWx0ZXIodmFsdWUgPT4gISF2YWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGxvYWQgZmlsZSBpbnRvIHRoZSB0YXNrXG4gICAgICogUE9TVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS90YXNrLzppZC9maWxlLzpmaWVsZCAgICAgLSBmb3IgZmlsZSBmaWVsZFxuICAgIC8vIHt7YmFzZVVybH19L2FwaS90YXNrLzppZC9maWxlcy86ZmllbGQgICAgLSBmb3IgZmlsZSBsaXN0IGZpZWxkXG4gICAgcHVibGljIHVwbG9hZEZpbGUodGFza0lkOiBzdHJpbmcsIGZpZWxkSWQ6IHN0cmluZywgYm9keTogb2JqZWN0LCBtdWx0aXBsZUZpbGVzOiBib29sZWFuKTpcbiAgICAgICAgT2JzZXJ2YWJsZTxQcm92aWRlclByb2dyZXNzIHwgRXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIGNvbnN0IHVybCA9ICFtdWx0aXBsZUZpbGVzID8gYHB1YmxpYy90YXNrLyR7dGFza0lkfS9maWxlLyR7ZmllbGRJZH1gIDogYHB1YmxpYy90YXNrLyR7dGFza0lkfS9maWxlcy8ke2ZpZWxkSWR9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIucG9zdFdpdGhFdmVudCQ8RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPih1cmwsIHRoaXMuU0VSVkVSX1VSTCwgYm9keSkucGlwZShcbiAgICAgICAgICAgIG1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5VcGxvYWRQcm9ncmVzczpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZVByb3ZpZGVyLmdldFByb2dyZXNzKGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlJlc3BvbnNlOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LmJvZHk7XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVsZXRlIGZpbGUgZnJvbSB0aGUgdGFza1xuICAgICAqIERFTEVURVxuICAgICAqL1xuICAgIHB1YmxpYyBkZWxldGVGaWxlKHRhc2tJZDogc3RyaW5nLCBmaWVsZElkOiBzdHJpbmcsIG5hbWU/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPE1lc3NhZ2VSZXNvdXJjZT4ge1xuICAgICAgICBjb25zdCB1cmwgPSAhIW5hbWUgPyBgcHVibGljL3Rhc2svJHt0YXNrSWR9L2ZpbGUvJHtmaWVsZElkfS8ke25hbWV9YCA6IGBwdWJsaWMvdGFzay8ke3Rhc2tJZH0vZmlsZS8ke2ZpZWxkSWR9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZGVsZXRlJCh1cmwsIHRoaXMuU0VSVkVSX1VSTCkucGlwZShcbiAgICAgICAgICAgIG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERvd25sb2FkIHRhc2sgZmlsZSBwcmV2aWV3IGZvciBmaWVsZCB2YWx1ZVxuICAgICAqIEdFVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS90YXNrLzppZC9maWxlX3ByZXZpZXcvOmZpZWxkXG4gICAgcHVibGljIGRvd25sb2FkRmlsZVByZXZpZXcodGFza0lkOiBzdHJpbmcsIGZpZWxkSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8UHJvdmlkZXJQcm9ncmVzcyB8IEJsb2I+IHtcbiAgICAgICAgY29uc3QgdXJsID0gJ3B1YmxpYy90YXNrLycgKyB0YXNrSWQgKyAnL2ZpbGVfcHJldmlldy8nICsgZmllbGRJZDtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc291cmNlUHJvdmlkZXIuZ2V0QmxvYiQodXJsLCB0aGlzLlNFUlZFUl9VUkwpLnBpcGUoXG4gICAgICAgICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzczpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZVByb3ZpZGVyLmdldFByb2dyZXNzKGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlJlc3BvbnNlOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50LmJvZHk7XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLXRhc2stcmVzb3VyY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvcmVzb3VyY2VzL2VuZ2luZS1lbmRwb2ludC9wdWJsaWMvcHVibGljLXRhc2stcmVzb3VyY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRzdELE9BQU8sRUFBMkIsZ0JBQWdCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUczRixPQUFPLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQVE5RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQU9uRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsbUJBQW1CO0lBRTlELFlBQXNCLFNBQTJCLEVBQzNCLGNBQW9DLEVBQ3BDLGVBQXNDLEVBQ3RDLE9BQXNCO1FBQ3hDLEtBQUssQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUp6QyxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBc0I7UUFDcEMsb0JBQWUsR0FBZixlQUFlLENBQXVCO1FBQ3RDLFlBQU8sR0FBUCxPQUFPLENBQWU7SUFFNUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHlDQUF5QztJQUNsQyxVQUFVLENBQUMsTUFBYztRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFB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QUFNLEdBQUcsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FDN0QsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ1IsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUNoQixLQUFLLGFBQWEsQ0FBQyxnQkFBZ0I7b0JBQy9CLE9BQU8sZ0JBQWdCLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMvQyxLQUFLLGFBQWEsQ0FBQyxRQUFRO29CQUN2QixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ3RCO29CQUNJLE9BQU8sU0FBUyxDQUFDO2FBQ3hCO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUMzQixDQUFDO0lBQ04sQ0FBQzs7dUhBL0tRLHlCQUF5QjsySEFBekIseUJBQXlCLGNBRnRCLE1BQU07NEZBRVQseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Rhc2tSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uL3Rhc2stcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge0ZpZWxkQ29udmVydGVyU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vdGFzay1jb250ZW50L3NlcnZpY2VzL2ZpZWxkLWNvbnZlcnRlci5zZXJ2aWNlJztcbmltcG9ydCB7Q29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7UGFyYW1zLCBQcm92aWRlclByb2dyZXNzLCBSZXNvdXJjZVByb3ZpZGVyfSBmcm9tICcuLi8uLi9yZXNvdXJjZS1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0ZpbHRlclR5cGV9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9tb2RlbHMvZmlsdGVyLXR5cGUnO1xuaW1wb3J0IHtGaWx0ZXJ9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9tb2RlbHMvZmlsdGVyJztcbmltcG9ydCB7UGFnZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL3BhZ2UnO1xuaW1wb3J0IHtUYXNrU2V0RGF0YVJlcXVlc3RCb2R5fSBmcm9tICcuLi8uLi9pbnRlcmZhY2UvdGFzay1zZXQtZGF0YS1yZXF1ZXN0LWJvZHknO1xuaW1wb3J0IHtUYXNrUmVmZXJlbmNlfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UvdGFzay1yZWZlcmVuY2UnO1xuaW1wb3J0IHtEYXRhR3JvdXB9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9kYXRhLWdyb3Vwcyc7XG5pbXBvcnQge0RhdGFGaWVsZH0gZnJvbSAnLi4vLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2Fic3RyYWN0LWRhdGEtZmllbGQnO1xuaW1wb3J0IHtUYXNrfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UvdGFzayc7XG5pbXBvcnQge0h0dHBFdmVudFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlLCBNZXNzYWdlUmVzb3VyY2V9IGZyb20gJy4uLy4uL2ludGVyZmFjZS9tZXNzYWdlLXJlc291cmNlJztcbmltcG9ydCB7R2V0RGF0YUdyb3Vwc0V2ZW50T3V0Y29tZX0gZnJvbSAnLi4vLi4vLi4vZXZlbnQvbW9kZWwvZXZlbnQtb3V0Y29tZXMvZGF0YS1vdXRjb21lcy9nZXQtZGF0YS1ncm91cHMtZXZlbnQtb3V0Y29tZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUHVibGljVGFza1Jlc291cmNlU2VydmljZSBleHRlbmRzIFRhc2tSZXNvdXJjZVNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9wcm92aWRlcjogUmVzb3VyY2VQcm92aWRlcixcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NvbmZpZ1NlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBfZmllbGRDb252ZXJ0ZXI6IEZpZWxkQ29udmVydGVyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZ2dlcjogTG9nZ2VyU2VydmljZSkge1xuICAgICAgICBzdXBlcihfcHJvdmlkZXIsIF9jb25maWdTZXJ2aWNlLCBfZmllbGRDb252ZXJ0ZXIsIF9sb2dnZXIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFzc2lnbiB0YXNrXG4gICAgICogR0VUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrL2Fzc2lnbi86aWRcbiAgICBwdWJsaWMgYXNzaWduVGFzayh0YXNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm92aWRlci5nZXQkKCdwdWJsaWMvdGFzay9hc3NpZ24vJyArIHRhc2tJZCwgdGhpcy5TRVJWRVJfVVJMKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYW5jZWwgdGFza1xuICAgICAqIEdFVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS9wdWJsaWMvdGFzay9jYW5jZWwvOmlkXG4gICAgcHVibGljIGNhbmNlbFRhc2sodGFza0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdmlkZXIuZ2V0JCgncHVibGljL3Rhc2svY2FuY2VsLycgKyB0YXNrSWQsIHRoaXMuU0VSVkVSX1VSTClcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluaXNoIHRhc2tcbiAgICAgKiBHRVRcbiAgICAgKi9cbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvcHVibGljL3Rhc2svZmluaXNoLzppZFxuICAgIHB1YmxpYyBmaW5pc2hUYXNrKHRhc2tJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyLmdldCQoJ3B1YmxpYy90YXNrL2ZpbmlzaC8nICsgdGFza0lkLCB0aGlzLlNFUlZFUl9VUkwpXG4gICAgICAgICAgICAucGlwZShtYXAociA9PiB0aGlzLmNoYW5nZVR5cGUociwgdW5kZWZpbmVkKSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB0YXNrcyBvZiB0aGUgY2FzZVxuICAgICAqIEdFVFxuICAgICAqL1xuICAgIC8vIHt7YmFzZVVybH19L2FwaS9wdWJsaWMvdGFzay9jYXNlLzppZFxuICAgIHB1YmxpYyBnZXRBbGxUYXNrc0J5Q2FzZShjYXNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8VGFza1JlZmVyZW5jZT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyLmdldCQoJ3B1YmxpYy90YXNrL2Nhc2UvJyArIGNhc2VJZCwgdGhpcy5TRVJWRVJfVVJMKVxuICAgICAgICAgICAgLnBpcGUobWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgYWxsIHRhc2sgZGF0YVxuICAgICAqXG4gICAgICogR0VUXG4gICAgICpcbiAgICAgKiBJZiB5b3UgZG9uJ3Qgd2FudCB0byBwYXJzZSB0aGUgcmVzcG9uc2UgeW91cnNlbGYgdXNlIFtnZXREYXRhXXtAbGluayBUYXNrUmVzb3VyY2VTZXJ2aWNlI2dldERhdGF9IGluc3RlYWQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyB0aGUgcmF3IGJhY2tlbmQgcmVzcG9uc2Ugd2l0aG91dCBhbnkgYWRkaXRpb25hbCBwcm9jZXNzaW5nXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3B1YmxpYy90YXNrLzppZC9kYXRhXG4gICAgcHVibGljIHJhd0dldERhdGEodGFza0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvdmlkZXIuZ2V0JCgncHVibGljL3Rhc2svJyArIHRhc2tJZCArICcvZGF0YScsIHRoaXMuU0VSVkVSX1VSTClcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCAnZGF0YUdyb3VwcycpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IHRhc2sgZGF0YVxuICAgICAqIFBPU1RcbiAgICAgKi9cbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvcHVibGljL3Rhc2svOmlkL2RhdGFcbiAgICBwdWJsaWMgc2V0RGF0YSh0YXNrSWQ6IHN0cmluZywgYm9keTogVGFza1NldERhdGFSZXF1ZXN0Qm9keSk6IE9ic2VydmFibGU8RXZlbnRPdXRjb21lTWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcm92aWRlci5wb3N0JCgncHVibGljL3Rhc2svJyArIHRhc2tJZCArICcvZGF0YScsIHRoaXMuU0VSVkVSX1VSTCwgYm9keSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuY2hhbmdlVHlwZShyLCB1bmRlZmluZWQpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VhcmNoZXMgdGFza3MgdHJvdWdoIHRoZSBNb25nbyBlbmRwb2ludC5cbiAgICAgKiBQT1NUXG4gICAgICogQHBhcmFtIGZpbHRlclBhcmFtIGZpbHRlciB1c2VkIHRvIHNlYXJjaCB0aGUgdGFza3MuIE11c3QgYmUgb2YgdHlwZSBgVEFTS2AuXG4gICAgICogTm90ZSB0aGF0IHRoZSBgcXVlcnlgIGF0dHJpYnV0ZSBvZiB0aGUgZmlsdGVyIGNhbm5vdCBiZSB1c2VkIHdpdGggdGhpcyBlbmRwb2ludC5cbiAgICAgKiBBdHRlbXB0aW5nIHRvIHVzZSBpdCB3aWxsIGRpc3BsYXkgYSB3YXJuaW5nIGFuZCByZW1vdmUgdGhlIGF0dHJpYnV0ZSBmcm9tIHRoZSByZXF1ZXN0LlxuICAgICAqIEBwYXJhbSBwYXJhbXMgQWRkaXRpb25hbCByZXF1ZXN0IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICAvLyB7e2Jhc2VVcmx9fS9hcGkvcHVibGljL3Rhc2svc2VhcmNoXG4gICAgcHVibGljIGdldFRhc2tzKGZpbHRlclBhcmFtOiBGaWx0ZXIsIHBhcmFtcz86IFBhcmFtcyk6IE9ic2VydmFibGU8UGFnZTxUYXNrPj4ge1xuICAgICAgICBpZiAoZmlsdGVyUGFyYW0udHlwZSAhPT0gRmlsdGVyVHlwZS5UQVNLKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Byb3ZpZGVkIGZpbHRlciBkb2VzblxcJ3QgaGF2ZSB0eXBlIFRBU0snKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWx0ZXJQYXJhbS5ib2R5Q29udGFpbnNRdWVyeSgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2dldFRhc2tzIGVuZHBvaW50IGNhbm5vdCBiZSBxdWVyaWVkIHdpdGggZmlsdGVycyB0aGF0IGNvbnRhaW4gdGhlIFxcJ3F1ZXJ5XFwnIGF0dHJpYnV0ZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgcGFyYW1zID0gUmVzb3VyY2VQcm92aWRlci5jb21iaW5lUGFyYW1zKGZpbHRlclBhcmFtLmdldFJlcXVlc3RQYXJhbXMoKSwgcGFyYW1zKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb3ZpZGVyLnBvc3QkKCdwdWJsaWMvdGFzay9zZWFyY2gnLCB0aGlzLlNFUlZFUl9VUkwsIGZpbHRlclBhcmFtLmdldFJlcXVlc3RCb2R5KCksIHBhcmFtcylcbiAgICAgICAgICAgIC5waXBlKG1hcChyID0+IHRoaXMuZ2V0UmVzb3VyY2VQYWdlPFRhc2s+KHIsICd0YXNrcycpKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRG93bmxvYWQgdGFzayBmaWxlIGZpZWxkIHZhbHVlXG4gICAgICogR0VUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3Rhc2svOmlkL2ZpbGUvOmZpZWxkICAgICAgICAgLSBmb3IgZmlsZSBmaWVsZFxuICAgIC8vIHt7YmFzZVVybH19L2FwaS90YXNrLzppZC9maWxlLzpmaWVsZC86bmFtZSAgIC0gZm9yIGZpbGUgbGlzdCBmaWVsZFxuICAgIHB1YmxpYyBkb3dubG9hZEZpbGUodGFza0lkOiBzdHJpbmcsIGZpZWxkSWQ6IHN0cmluZywgbmFtZT86IHN0cmluZyk6IE9ic2VydmFibGU8UHJvdmlkZXJQcm9ncmVzcyB8IEJsb2I+IHtcbiAgICAgICAgY29uc3QgdXJsID0gISFuYW1lID8gYHB1YmxpYy90YXNrLyR7dGFza0lkfS9maWxlLyR7ZmllbGRJZH0vJHtuYW1lfWAgOiBgcHVibGljL3Rhc2svJHt0YXNrSWR9L2ZpbGUvJHtmaWVsZElkfWA7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvdXJjZVByb3ZpZGVyLmdldEJsb2IkKHVybCwgdGhpcy5TRVJWRVJfVVJMKS5waXBlKFxuICAgICAgICAgICAgbWFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLkRvd25sb2FkUHJvZ3Jlc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VQcm92aWRlci5nZXRQcm9ncmVzcyhldmVudCk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5SZXNwb25zZTpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBldmVudC5ib2R5O1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGZpbHRlcih2YWx1ZSA9PiAhIXZhbHVlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwbG9hZCBmaWxlIGludG8gdGhlIHRhc2tcbiAgICAgKiBQT1NUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3Rhc2svOmlkL2ZpbGUvOmZpZWxkICAgICAtIGZvciBmaWxlIGZpZWxkXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3Rhc2svOmlkL2ZpbGVzLzpmaWVsZCAgICAtIGZvciBmaWxlIGxpc3QgZmllbGRcbiAgICBwdWJsaWMgdXBsb2FkRmlsZSh0YXNrSWQ6IHN0cmluZywgZmllbGRJZDogc3RyaW5nLCBib2R5OiBvYmplY3QsIG11bHRpcGxlRmlsZXM6IGJvb2xlYW4pOlxuICAgICAgICBPYnNlcnZhYmxlPFByb3ZpZGVyUHJvZ3Jlc3MgfCBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+IHtcbiAgICAgICAgY29uc3QgdXJsID0gIW11bHRpcGxlRmlsZXMgPyBgcHVibGljL3Rhc2svJHt0YXNrSWR9L2ZpbGUvJHtmaWVsZElkfWAgOiBgcHVibGljL3Rhc2svJHt0YXNrSWR9L2ZpbGVzLyR7ZmllbGRJZH1gO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5wb3N0V2l0aEV2ZW50JDxFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2U+KHVybCwgdGhpcy5TRVJWRVJfVVJMLCBib2R5KS5waXBlKFxuICAgICAgICAgICAgbWFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlUHJvdmlkZXIuZ2V0UHJvZ3Jlc3MoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuUmVzcG9uc2U6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQuYm9keTtcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBmaWx0ZXIodmFsdWUgPT4gISF2YWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWxldGUgZmlsZSBmcm9tIHRoZSB0YXNrXG4gICAgICogREVMRVRFXG4gICAgICovXG4gICAgcHVibGljIGRlbGV0ZUZpbGUodGFza0lkOiBzdHJpbmcsIGZpZWxkSWQ6IHN0cmluZywgbmFtZT86IHN0cmluZyk6IE9ic2VydmFibGU8TWVzc2FnZVJlc291cmNlPiB7XG4gICAgICAgIGNvbnN0IHVybCA9ICEhbmFtZSA/IGBwdWJsaWMvdGFzay8ke3Rhc2tJZH0vZmlsZS8ke2ZpZWxkSWR9LyR7bmFtZX1gIDogYHB1YmxpYy90YXNrLyR7dGFza0lkfS9maWxlLyR7ZmllbGRJZH1gO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5kZWxldGUkKHVybCwgdGhpcy5TRVJWRVJfVVJMKS5waXBlKFxuICAgICAgICAgICAgbWFwKHIgPT4gdGhpcy5jaGFuZ2VUeXBlKHIsIHVuZGVmaW5lZCkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRG93bmxvYWQgdGFzayBmaWxlIHByZXZpZXcgZm9yIGZpZWxkIHZhbHVlXG4gICAgICogR0VUXG4gICAgICovXG4gICAgLy8ge3tiYXNlVXJsfX0vYXBpL3Rhc2svOmlkL2ZpbGVfcHJldmlldy86ZmllbGRcbiAgICBwdWJsaWMgZG93bmxvYWRGaWxlUHJldmlldyh0YXNrSWQ6IHN0cmluZywgZmllbGRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm92aWRlclByb2dyZXNzIHwgQmxvYj4ge1xuICAgICAgICBjb25zdCB1cmwgPSAncHVibGljL3Rhc2svJyArIHRhc2tJZCArICcvZmlsZV9wcmV2aWV3LycgKyBmaWVsZElkO1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb3VyY2VQcm92aWRlci5nZXRCbG9iJCh1cmwsIHRoaXMuU0VSVkVSX1VSTCkucGlwZShcbiAgICAgICAgICAgIG1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5Eb3dubG9hZFByb2dyZXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlUHJvdmlkZXIuZ2V0UHJvZ3Jlc3MoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBjYXNlIEh0dHBFdmVudFR5cGUuUmVzcG9uc2U6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQuYm9keTtcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBmaWx0ZXIodmFsdWUgPT4gISF2YWx1ZSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|