@lowcodeunit/applications-flow-common 1.37.85-mobile-friendly → 1.37.88-new-state-setup
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/esm2020/lib/controls/build-pipeline-form/build-pipeline-form.component.mjs +39 -39
- package/esm2020/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/custom-domain-dialog/custom-domain-dialog.component.mjs +1 -1
- package/esm2020/lib/dialogs/dfs-modifiers-dialog/dfs-modifiers-dialog.component.mjs +5 -2
- package/esm2020/lib/dialogs/edit-application-dialog/edit-application-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/edit-project-dialog/edit-project-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/feed-header-dialog/feed-header-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/new-application-dialog/new-application-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/processor-details-dialog/processor-details-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/source-control-dialog/source-control-dialog.component.mjs +5 -2
- package/esm2020/lib/dialogs/state-config-dialog/state-config-dialog.component.mjs +7 -4
- package/esm2020/lib/dialogs/user-account-dialog/user-account-dialog.component.mjs +24 -27
- package/fesm2015/lowcodeunit-applications-flow-common.mjs +105 -82
- package/fesm2015/lowcodeunit-applications-flow-common.mjs.map +1 -1
- package/fesm2020/lowcodeunit-applications-flow-common.mjs +103 -80
- package/fesm2020/lowcodeunit-applications-flow-common.mjs.map +1 -1
- package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts +9 -9
- package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts +5 -2
- package/lib/dialogs/dfs-modifiers-dialog/dfs-modifiers-dialog.component.d.ts +5 -2
- package/lib/dialogs/edit-application-dialog/edit-application-dialog.component.d.ts +5 -2
- package/lib/dialogs/edit-project-dialog/edit-project-dialog.component.d.ts +5 -2
- package/lib/dialogs/feed-header-dialog/feed-header-dialog.component.d.ts +5 -2
- package/lib/dialogs/new-application-dialog/new-application-dialog.component.d.ts +5 -2
- package/lib/dialogs/processor-details-dialog/processor-details-dialog.component.d.ts +5 -2
- package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts +5 -2
- package/lib/dialogs/state-config-dialog/state-config-dialog.component.d.ts +5 -2
- package/lib/dialogs/user-account-dialog/user-account-dialog.component.d.ts +12 -7
- package/package.json +1 -1
@@ -22,10 +22,13 @@ export class EditApplicationDialogComponent {
|
|
22
22
|
return this.EditApplicationControl?.ApplicationFormGroup;
|
23
23
|
}
|
24
24
|
ngOnInit() {
|
25
|
-
this.eacSvc.State.subscribe((state) => {
|
25
|
+
this.StateSub = this.eacSvc.State.subscribe((state) => {
|
26
26
|
this.State = state;
|
27
27
|
});
|
28
28
|
}
|
29
|
+
ngOnDestroy() {
|
30
|
+
this.StateSub.unsubscribe();
|
31
|
+
}
|
29
32
|
CloseDialog() {
|
30
33
|
this.dialogRef.close();
|
31
34
|
}
|
@@ -46,10 +49,10 @@ export class EditApplicationDialogComponent {
|
|
46
49
|
}
|
47
50
|
}
|
48
51
|
EditApplicationDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: EditApplicationDialogComponent, deps: [{ token: i1.EaCService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i3.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component });
|
49
|
-
EditApplicationDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: EditApplicationDialogComponent, selector: "lcu-edit-application-dialog", viewQueries: [{ propertyName: "EditApplicationControl", first: true, predicate: EditApplicationFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>\n Edit Application: {{ data.application?.Application?.Name }}\n </h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-application-form\n [application-lookup]=\"data.applicationLookup\"\n [editing-application]=\"data.application\"\n [project-lookup]=\"data.projectLookup\"\n [loading]=\"State?.Loading\"\n (save-form-event)=\"HandleSaveApplicationEvent($event)\"\n >\n </lcu-edit-application-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n
|
52
|
+
EditApplicationDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: EditApplicationDialogComponent, selector: "lcu-edit-application-dialog", viewQueries: [{ propertyName: "EditApplicationControl", first: true, predicate: EditApplicationFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>\n Edit Application: {{ data.application?.Application?.Name }}\n </h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-application-form\n [application-lookup]=\"data.applicationLookup\"\n [editing-application]=\"data.application\"\n [project-lookup]=\"data.projectLookup\"\n [loading]=\"State?.Loading\"\n (save-form-event)=\"HandleSaveApplicationEvent($event)\"\n >\n </lcu-edit-application-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n *ngIf=\"!State?.Loading\"\n mat-raised-button\n type=\"submit\"\n fxFlex=\"25%\"\n color=\"primary\"\n (click)=\"SaveApplication()\"\n [disabled]=\"\n !ApplicationFormGroup?.valid || !ApplicationFormGroup?.dirty\n \"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n</mat-dialog-actions>\n", styles: [""], components: [{ type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.EditApplicationFormComponent, selector: "lcu-edit-application-form", inputs: ["application-lookup", "current-route", "editing-application", "has-save-button", "project-lookup", "loading"], outputs: ["save-form-event"] }], directives: [{ type: i7.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatError, selector: "mat-error", inputs: ["id"] }, { type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i7.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i7.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] });
|
50
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: EditApplicationDialogComponent, decorators: [{
|
51
54
|
type: Component,
|
52
|
-
args: [{ selector: 'lcu-edit-application-dialog', template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>\n Edit Application: {{ data.application?.Application?.Name }}\n </h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-application-form\n [application-lookup]=\"data.applicationLookup\"\n [editing-application]=\"data.application\"\n [project-lookup]=\"data.projectLookup\"\n [loading]=\"State?.Loading\"\n (save-form-event)=\"HandleSaveApplicationEvent($event)\"\n >\n </lcu-edit-application-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n
|
55
|
+
args: [{ selector: 'lcu-edit-application-dialog', template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>\n Edit Application: {{ data.application?.Application?.Name }}\n </h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-application-form\n [application-lookup]=\"data.applicationLookup\"\n [editing-application]=\"data.application\"\n [project-lookup]=\"data.projectLookup\"\n [loading]=\"State?.Loading\"\n (save-form-event)=\"HandleSaveApplicationEvent($event)\"\n >\n </lcu-edit-application-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n *ngIf=\"!State?.Loading\"\n mat-raised-button\n type=\"submit\"\n fxFlex=\"25%\"\n color=\"primary\"\n (click)=\"SaveApplication()\"\n [disabled]=\"\n !ApplicationFormGroup?.valid || !ApplicationFormGroup?.dirty\n \"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n</mat-dialog-actions>\n", styles: [""] }]
|
53
56
|
}], ctorParameters: function () { return [{ type: i1.EaCService }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
|
54
57
|
type: Inject,
|
55
58
|
args: [MAT_DIALOG_DATA]
|
@@ -57,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
57
60
|
type: ViewChild,
|
58
61
|
args: [EditApplicationFormComponent]
|
59
62
|
}] } });
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1hcHBsaWNhdGlvbi1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZGlhbG9ncy9lZGl0LWFwcGxpY2F0aW9uLWRpYWxvZy9lZGl0LWFwcGxpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9kaWFsb2dzL2VkaXQtYXBwbGljYXRpb24tZGlhbG9nL2VkaXQtYXBwbGljYXRpb24tZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUt6RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQzs7Ozs7Ozs7Ozs7QUFlcEgsTUFBTSxPQUFPLDhCQUE4QjtJQWN2QyxZQUNXLE1BQWtCLEVBQ2xCLFNBQXVELEVBQzlCLElBQTJCLEVBQ2pELFFBQXFCO1FBSHhCLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDbEIsY0FBUyxHQUFULFNBQVMsQ0FBOEM7UUFDOUIsU0FBSSxHQUFKLElBQUksQ0FBdUI7UUFDakQsYUFBUSxHQUFSLFFBQVEsQ0FBYTtJQUNoQyxDQUFDO0lBZkosSUFBVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUM7SUFDN0QsQ0FBQztJQWVNLFFBQVE7UUFDWCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2xELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sMEJBQTBCLENBQUMsS0FBYTtRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUNBQWlDLEVBQUUsU0FBUyxFQUFFO2dCQUM3RCxRQUFRLEVBQUUsSUFBSTthQUNqQixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdEI7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNsRCxDQUFDOzsySEFqRFEsOEJBQThCLHdFQWlCM0IsZUFBZTsrR0FqQmxCLDhCQUE4QiwySEFDNUIsNEJBQTRCLGdEQ3ZCM0MseTlDQXVEQTsyRkRqQ2EsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNJLDZCQUE2Qjs7MEJBcUJsQyxNQUFNOzJCQUFDLGVBQWU7c0VBZnBCLHNCQUFzQjtzQkFENUIsU0FBUzt1QkFBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnQGxjdS9jb21tb24nO1xuaW1wb3J0IHsgRWFDQXBwbGljYXRpb25Bc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBFZGl0QXBwbGljYXRpb25Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29udHJvbHMvZWRpdC1hcHBsaWNhdGlvbi1mb3JtL2VkaXQtYXBwbGljYXRpb24tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWFDU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VhYy5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uc0Zsb3dTdGF0ZSB9IGZyb20gJy4uLy4uL3N0YXRlL2FwcGxpY2F0aW9ucy1mbG93LnN0YXRlJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkRpYWxvZ0RhdGEge1xuICAgIGFwcGxpY2F0aW9uOiBFYUNBcHBsaWNhdGlvbkFzQ29kZTtcbiAgICBhcHBsaWNhdGlvbkxvb2t1cDogc3RyaW5nO1xuICAgIHByb2plY3RMb29rdXA6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZWRpdC1hcHBsaWNhdGlvbi1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lZGl0LWFwcGxpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZWRpdC1hcHBsaWNhdGlvbi1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRWRpdEFwcGxpY2F0aW9uRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBWaWV3Q2hpbGQoRWRpdEFwcGxpY2F0aW9uRm9ybUNvbXBvbmVudClcbiAgICBwdWJsaWMgRWRpdEFwcGxpY2F0aW9uQ29udHJvbDogRWRpdEFwcGxpY2F0aW9uRm9ybUNvbXBvbmVudDtcblxuICAgIHB1YmxpYyBnZXQgQXBwbGljYXRpb25Gb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuRWRpdEFwcGxpY2F0aW9uQ29udHJvbD8uQXBwbGljYXRpb25Gb3JtR3JvdXA7XG4gICAgfVxuXG4gICAgcHVibGljIEVycm9yTWVzc2FnZTogc3RyaW5nO1xuXG4gICAgcHVibGljIFN0YXRlOiBBcHBsaWNhdGlvbnNGbG93U3RhdGU7XG5cbiAgICBwdWJsaWMgU3RhdGVTdWI6IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWFjU3ZjOiBFYUNTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RWRpdEFwcGxpY2F0aW9uRGlhbG9nQ29tcG9uZW50PixcbiAgICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBBcHBsaWNhdGlvbkRpYWxvZ0RhdGEsXG4gICAgICAgIHByb3RlY3RlZCBzbmFja0JhcjogTWF0U25hY2tCYXJcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU3RhdGVTdWIgPSB0aGlzLmVhY1N2Yy5TdGF0ZS5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLlN0YXRlID0gc3RhdGU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5TdGF0ZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBDbG9zZURpYWxvZygpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlU2F2ZUFwcGxpY2F0aW9uRXZlbnQoZXZlbnQ6IFN0YXR1cykge1xuICAgICAgICBjb25zb2xlLmxvZygnZXZlbnQgdG8gc2F2ZTogJywgZXZlbnQpO1xuICAgICAgICBpZiAoZXZlbnQuQ29kZSA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdBcHBsaWNhdGlvbiBTdWNjZXNmdWxseSBVcGRhdGVkJywgJ0Rpc21pc3MnLCB7XG4gICAgICAgICAgICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuQ2xvc2VEaWFsb2coKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuRXJyb3JNZXNzYWdlID0gZXZlbnQuTWVzc2FnZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBTYXZlQXBwbGljYXRpb24oKSB7XG4gICAgICAgIHRoaXMuRWRpdEFwcGxpY2F0aW9uQ29udHJvbC5TYXZlQXBwbGljYXRpb24oKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGlhbG9nLWhlYWRlclwiIGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1iZXR3ZWVuIGNlbnRlclwiPlxuICAgIDxoMiBtYXQtZGlhbG9nLXRpdGxlPlxuICAgICAgICBFZGl0IEFwcGxpY2F0aW9uOiB7eyBkYXRhLmFwcGxpY2F0aW9uPy5BcHBsaWNhdGlvbj8uTmFtZSB9fVxuICAgIDwvaDI+XG5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiQ2xvc2VEaWFsb2coKVwiPlxuICAgICAgICA8bWF0LWljb24+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuXG48bWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxsY3UtZWRpdC1hcHBsaWNhdGlvbi1mb3JtXG4gICAgICAgIFthcHBsaWNhdGlvbi1sb29rdXBdPVwiZGF0YS5hcHBsaWNhdGlvbkxvb2t1cFwiXG4gICAgICAgIFtlZGl0aW5nLWFwcGxpY2F0aW9uXT1cImRhdGEuYXBwbGljYXRpb25cIlxuICAgICAgICBbcHJvamVjdC1sb29rdXBdPVwiZGF0YS5wcm9qZWN0TG9va3VwXCJcbiAgICAgICAgW2xvYWRpbmddPVwiU3RhdGU/LkxvYWRpbmdcIlxuICAgICAgICAoc2F2ZS1mb3JtLWV2ZW50KT1cIkhhbmRsZVNhdmVBcHBsaWNhdGlvbkV2ZW50KCRldmVudClcIlxuICAgID5cbiAgICA8L2xjdS1lZGl0LWFwcGxpY2F0aW9uLWZvcm0+XG5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiRXJyb3JNZXNzYWdlXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAge3sgRXJyb3JNZXNzYWdlIH19XG4gICAgPC9tYXQtZXJyb3I+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPG1hdC1kaWFsb2ctYWN0aW9uc1xuICAgIGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIlxuICAgIGRpdlxuICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICBmeExheW91dEFsaWduPVwiZW5kIGNlbnRlclwiXG4+XG4gICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICBmeEZsZXg9XCIyNSVcIlxuICAgICAgICAoY2xpY2spPVwiQ2xvc2VEaWFsb2coKVwiXG4gICAgPlxuICAgICAgICBDYW5jZWxcbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhU3RhdGU/LkxvYWRpbmdcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgZnhGbGV4PVwiMjUlXCJcbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgKGNsaWNrKT1cIlNhdmVBcHBsaWNhdGlvbigpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICAgICAgIUFwcGxpY2F0aW9uRm9ybUdyb3VwPy52YWxpZCB8fCAhQXBwbGljYXRpb25Gb3JtR3JvdXA/LmRpcnR5XG4gICAgICAgIFwiXG4gICAgPlxuICAgICAgICA8IS0tIDxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj4gLS0+XG4gICAgICAgIFNhdmVcbiAgICA8L2J1dHRvbj5cbjwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuIl19
|
@@ -25,7 +25,7 @@ export class EditProjectDialogComponent {
|
|
25
25
|
return this.EditProjectControl?.ProjectFormGroup;
|
26
26
|
}
|
27
27
|
ngOnInit() {
|
28
|
-
this.eacSvc.State.subscribe((state) => {
|
28
|
+
this.StateSub = this.eacSvc.State.subscribe((state) => {
|
29
29
|
this.State = state;
|
30
30
|
if (this.State?.EaC?.Projects) {
|
31
31
|
this.Project =
|
@@ -33,6 +33,9 @@ export class EditProjectDialogComponent {
|
|
33
33
|
}
|
34
34
|
});
|
35
35
|
}
|
36
|
+
ngOnDestroy() {
|
37
|
+
this.StateSub.unsubscribe();
|
38
|
+
}
|
36
39
|
CloseDialog() {
|
37
40
|
this.dialogRef.close();
|
38
41
|
}
|
@@ -53,10 +56,10 @@ export class EditProjectDialogComponent {
|
|
53
56
|
}
|
54
57
|
}
|
55
58
|
EditProjectDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: EditProjectDialogComponent, deps: [{ token: i1.EaCService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i3.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component });
|
56
|
-
EditProjectDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: EditProjectDialogComponent, selector: "lcu-edit-project-dialog", viewQueries: [{ propertyName: "EditProjectControl", first: true, predicate: EditProjectFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Edit Project: {{ Project?.Project?.Name }}</h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-project-form\n [project-lookup]=\"data.projectLookup\"\n (save-form-event)=\"HandleSaveProjectEvent($event)\"\n >\n </lcu-edit-project-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n
|
59
|
+
EditProjectDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: EditProjectDialogComponent, selector: "lcu-edit-project-dialog", viewQueries: [{ propertyName: "EditProjectControl", first: true, predicate: EditProjectFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Edit Project: {{ Project?.Project?.Name }}</h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-project-form\n [project-lookup]=\"data.projectLookup\"\n (save-form-event)=\"HandleSaveProjectEvent($event)\"\n >\n </lcu-edit-project-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n *ngIf=\"!State?.Loading\"\n mat-raised-button\n type=\"submit\"\n fxFlex=\"25%\"\n color=\"primary\"\n (click)=\"SaveProject()\"\n [disabled]=\"!ProjectFormGroup?.valid || !ProjectFormGroup?.dirty\"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n</mat-dialog-actions>\n", styles: [""], components: [{ type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.EditProjectFormComponent, selector: "lcu-edit-project-form", inputs: ["project-lookup"], outputs: ["save-form-event"] }], directives: [{ type: i7.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatError, selector: "mat-error", inputs: ["id"] }, { type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i7.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i7.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] });
|
57
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: EditProjectDialogComponent, decorators: [{
|
58
61
|
type: Component,
|
59
|
-
args: [{ selector: 'lcu-edit-project-dialog', template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Edit Project: {{ Project?.Project?.Name }}</h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-project-form\n [project-lookup]=\"data.projectLookup\"\n (save-form-event)=\"HandleSaveProjectEvent($event)\"\n >\n </lcu-edit-project-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n
|
62
|
+
args: [{ selector: 'lcu-edit-project-dialog', template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Edit Project: {{ Project?.Project?.Name }}</h2>\n\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <lcu-edit-project-form\n [project-lookup]=\"data.projectLookup\"\n (save-form-event)=\"HandleSaveProjectEvent($event)\"\n >\n </lcu-edit-project-form>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"end center\"\n>\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"25%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n *ngIf=\"!State?.Loading\"\n mat-raised-button\n type=\"submit\"\n fxFlex=\"25%\"\n color=\"primary\"\n (click)=\"SaveProject()\"\n [disabled]=\"!ProjectFormGroup?.valid || !ProjectFormGroup?.dirty\"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n</mat-dialog-actions>\n", styles: [""] }]
|
60
63
|
}], ctorParameters: function () { return [{ type: i1.EaCService }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
|
61
64
|
type: Inject,
|
62
65
|
args: [MAT_DIALOG_DATA]
|
@@ -64,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
64
67
|
type: ViewChild,
|
65
68
|
args: [EditProjectFormComponent]
|
66
69
|
}] } });
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wcm9qZWN0LWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9kaWFsb2dzL2VkaXQtcHJvamVjdC1kaWFsb2cvZWRpdC1wcm9qZWN0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9kaWFsb2dzL2VkaXQtcHJvamVjdC1kaWFsb2cvZWRpdC1wcm9qZWN0LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBcUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhGLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFLekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOERBQThELENBQUM7Ozs7Ozs7Ozs7O0FBYXhHLE1BQU0sT0FBTywwQkFBMEI7SUF3Qm5DLFlBQ1csTUFBa0IsRUFDbEIsU0FBbUQsRUFDMUIsSUFBdUIsRUFDN0MsUUFBcUI7UUFIeEIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNsQixjQUFTLEdBQVQsU0FBUyxDQUEwQztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUM3QyxhQUFRLEdBQVIsUUFBUSxDQUFhO0lBQ2hDLENBQUM7SUF6QkosMkNBQTJDO0lBQzNDLGlFQUFpRTtJQUNqRSxJQUFJO0lBRUosSUFBVyxnQkFBZ0I7UUFDdkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUM7SUFDckQsQ0FBQztJQXFCTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ3ZDLENBQUMsS0FBNEIsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFO2dCQUMzQixJQUFJLENBQUMsT0FBTztvQkFDUixJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUMxRDtRQUNMLENBQUMsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sc0JBQXNCLENBQUMsS0FBYTtRQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLEVBQUUsU0FBUyxFQUFFO2dCQUN6RCxRQUFRLEVBQUUsSUFBSTthQUNqQixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdEI7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7O3VIQWpFUSwwQkFBMEIsd0VBMkJ2QixlQUFlOzJHQTNCbEIsMEJBQTBCLG1IQUN4Qix3QkFBd0IsZ0RDckJ2QyxxdkNBZ0RBOzJGRDVCYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0kseUJBQXlCOzswQkErQjlCLE1BQU07MkJBQUMsZUFBZTtzRUF6QnBCLGtCQUFrQjtzQkFEeEIsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnQGxjdS9jb21tb24nO1xuaW1wb3J0IHsgRWFDUHJvamVjdEFzQ29kZSB9IGZyb20gJ0BzZW1hbnRpY2pzL2NvbW1vbic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVkaXRQcm9qZWN0Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL2VkaXQtcHJvamVjdC1mb3JtL2VkaXQtcHJvamVjdC1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFYUNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWFjLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25zRmxvd1N0YXRlIH0gZnJvbSAnLi4vLi4vc3RhdGUvYXBwbGljYXRpb25zLWZsb3cuc3RhdGUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3REaWFsb2dEYXRhIHtcbiAgICBwcm9qZWN0TG9va3VwOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LWVkaXQtcHJvamVjdC1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lZGl0LXByb2plY3QtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lZGl0LXByb2plY3QtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRQcm9qZWN0RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBWaWV3Q2hpbGQoRWRpdFByb2plY3RGb3JtQ29tcG9uZW50KVxuICAgIHB1YmxpYyBFZGl0UHJvamVjdENvbnRyb2w6IEVkaXRQcm9qZWN0Rm9ybUNvbXBvbmVudDtcblxuICAgIC8vIHB1YmxpYyBnZXQgUHJvamVjdCgpOiBFYUNQcm9qZWN0QXNDb2RlIHtcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHNbdGhpcy5kYXRhLnByb2plY3RMb29rdXBdO1xuICAgIC8vIH1cblxuICAgIHB1YmxpYyBnZXQgUHJvamVjdEZvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xuICAgICAgICByZXR1cm4gdGhpcy5FZGl0UHJvamVjdENvbnRyb2w/LlByb2plY3RGb3JtR3JvdXA7XG4gICAgfVxuXG4gICAgLy8gcHVibGljIGdldCBTdGF0ZSgpOiBBcHBsaWNhdGlvbnNGbG93U3RhdGUge1xuICAgIC8vICAgICByZXR1cm4gdGhpcy5lYWNTdmMuU3RhdGU7XG4gICAgLy8gfVxuXG4gICAgcHVibGljIEVycm9yTWVzc2FnZTogc3RyaW5nO1xuXG4gICAgcHVibGljIFByb2plY3Q6IEVhQ1Byb2plY3RBc0NvZGU7XG5cbiAgICBwdWJsaWMgU3RhdGU6IEFwcGxpY2F0aW9uc0Zsb3dTdGF0ZTtcblxuICAgIHB1YmxpYyBTdGF0ZVN1YjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlYWNTdmM6IEVhQ1NlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxFZGl0UHJvamVjdERpYWxvZ0NvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogUHJvamVjdERpYWxvZ0RhdGEsXG4gICAgICAgIHByb3RlY3RlZCBzbmFja0JhcjogTWF0U25hY2tCYXJcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU3RhdGVTdWIgPSB0aGlzLmVhY1N2Yy5TdGF0ZS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoc3RhdGU6IEFwcGxpY2F0aW9uc0Zsb3dTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuU3RhdGUgPSBzdGF0ZTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5TdGF0ZT8uRWFDPy5Qcm9qZWN0cykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLlByb2plY3QgPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5TdGF0ZT8uRWFDPy5Qcm9qZWN0c1t0aGlzLmRhdGEucHJvamVjdExvb2t1cF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5TdGF0ZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBDbG9zZURpYWxvZygpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlU2F2ZVByb2plY3RFdmVudChldmVudDogU3RhdHVzKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdldmVudCB0byBzYXZlOiAnLCBldmVudCk7XG4gICAgICAgIGlmIChldmVudC5Db2RlID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ1Byb2plY3QgU3VjY2VzZnVsbHkgVXBkYXRlZCcsICdEaXNtaXNzJywge1xuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLkNsb3NlRGlhbG9nKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLkVycm9yTWVzc2FnZSA9IGV2ZW50Lk1lc3NhZ2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgU2F2ZVByb2plY3QoKSB7XG4gICAgICAgIHRoaXMuRWRpdFByb2plY3RDb250cm9sLlNhdmVQcm9qZWN0KCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImRpYWxvZy1oZWFkZXJcIiBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICA8aDIgbWF0LWRpYWxvZy10aXRsZT5FZGl0IFByb2plY3Q6IHt7IFByb2plY3Q/LlByb2plY3Q/Lk5hbWUgfX08L2gyPlxuXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIkNsb3NlRGlhbG9nKClcIj5cbiAgICAgICAgPG1hdC1pY29uPmNhbmNlbDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG48L2Rpdj5cblxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgICA8bGN1LWVkaXQtcHJvamVjdC1mb3JtXG4gICAgICAgIFtwcm9qZWN0LWxvb2t1cF09XCJkYXRhLnByb2plY3RMb29rdXBcIlxuICAgICAgICAoc2F2ZS1mb3JtLWV2ZW50KT1cIkhhbmRsZVNhdmVQcm9qZWN0RXZlbnQoJGV2ZW50KVwiXG4gICAgPlxuICAgIDwvbGN1LWVkaXQtcHJvamVjdC1mb3JtPlxuXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cIkVycm9yTWVzc2FnZVwiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgIHt7IEVycm9yTWVzc2FnZSB9fVxuICAgIDwvbWF0LWVycm9yPlxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG5cbjxtYXQtZGlhbG9nLWFjdGlvbnNcbiAgICBjbGFzcz1cImFjdGlvbnMtY29udGFpbmVyXCJcbiAgICBkaXZcbiAgICBmeExheW91dD1cInJvd1wiXG4gICAgZnhMYXlvdXRBbGlnbj1cImVuZCBjZW50ZXJcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgZnhGbGV4PVwiMjUlXCJcbiAgICAgICAgKGNsaWNrKT1cIkNsb3NlRGlhbG9nKClcIlxuICAgID5cbiAgICAgICAgQ2FuY2VsXG4gICAgPC9idXR0b24+XG5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIVN0YXRlPy5Mb2FkaW5nXCJcbiAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgIGZ4RmxleD1cIjI1JVwiXG4gICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgIChjbGljayk9XCJTYXZlUHJvamVjdCgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFQcm9qZWN0Rm9ybUdyb3VwPy52YWxpZCB8fCAhUHJvamVjdEZvcm1Hcm91cD8uZGlydHlcIlxuICAgID5cbiAgICAgICAgPCEtLSA8bWF0LWljb24+c2F2ZTwvbWF0LWljb24+IC0tPlxuICAgICAgICBTYXZlXG4gICAgPC9idXR0b24+XG48L21hdC1kaWFsb2ctYWN0aW9ucz5cbiJdfQ==
|