X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-frontend%2Fsrc%2Fapp%2Fpolicy%2Fpolicy-instance-dialog%2Fpolicy-instance-dialog.component.ts;h=8750d429180dde65547deb4ea4c4b10488175449;hb=HEAD;hp=f64991172a5e0ffe4e22251e0257043193cbc9cc;hpb=9fbfc54c9aa3669dd84d85f7c95fa57ba57ec642;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-frontend/src/app/policy/policy-instance-dialog/policy-instance-dialog.component.ts b/webapp-frontend/src/app/policy/policy-instance-dialog/policy-instance-dialog.component.ts index f649911..8750d42 100644 --- a/webapp-frontend/src/app/policy/policy-instance-dialog/policy-instance-dialog.component.ts +++ b/webapp-frontend/src/app/policy/policy-instance-dialog/policy-instance-dialog.component.ts @@ -29,18 +29,15 @@ import { MatDialogRef, MAT_DIALOG_DATA, } from "@angular/material/dialog"; -import { PolicyService } from "../../services/policy/policy.service"; -import { NotificationService } from "../../services/ui/notification.service"; -import { UiService } from "../../services/ui/ui.service"; -import { HttpErrorResponse } from "@angular/common/http"; -import { ErrorDialogService } from "../../services/ui/error-dialog.service"; +import { PolicyService } from "@services/policy/policy.service"; +import { NotificationService } from "@services/ui/notification.service"; +import { UiService } from "@services/ui/ui.service"; import * as uuid from "uuid"; import { CreatePolicyInstance, PolicyInstance, PolicyTypeSchema, -} from "../../interfaces/policy.types"; -import { formatJsonString } from "../no-type-policy-editor/no-type-policy-editor.component"; +} from "@interfaces/policy.types"; @Component({ selector: "nrcp-policy-instance-dialog", @@ -58,24 +55,23 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { private cdr: ChangeDetectorRef, public dialogRef: MatDialogRef, private policySvc: PolicyService, - private errorService: ErrorDialogService, private notificationService: NotificationService, @Inject(MAT_DIALOG_DATA) private data, private ui: UiService ) { this.policyInstance.policy_id = data.instanceId; - this.policyInstance.policytype_id = data.name; + this.policyInstance.policytype_id = data.name ? data.name : ""; this.policyInstance.policy_data = data.instanceJson; this.policyJson = data.instanceJson; this.jsonSchemaObject = data.createSchema; this.policyInstance.ric_id = data.ric; + this.policyInstance.service_id = "controlpanel"; } ngOnInit() { this.ui.darkModeState.subscribe((isDark) => { this.darkMode = isDark; }); - this.formatNoTypePolicyJson(); } // Do not remove! Needed to avoid "Expression has changed after it was checked" warning @@ -83,22 +79,12 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { this.cdr.detectChanges(); } - private formatNoTypePolicyJson() { - if (!this.typeHasSchema()) { - if (this.policyInstance.policy_data) { - this.policyJson = formatJsonString(this.policyInstance.policy_data); - } else { - this.policyJson = "{}"; - } - } - } - onSelectedRicChanged(newRic: string): void { this.policyInstance.ric_id = newRic; } onJsonChanged(newJson: string): void { - this.policyInstance.policy_data = newJson; + this.policyInstance.policy_data = newJson ? JSON.parse(newJson) : null; } onSubmit() { @@ -111,17 +97,14 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit { self.notificationService.success( "Policy " + self.policyInstance.policy_id + " submitted" ); - self.dialogRef.close(); - }, - error(error: HttpErrorResponse) { - self.errorService.displayError("Submit failed: " + error.error); + self.dialogRef.close("ok"); }, complete() {}, }); } typeHasSchema(): boolean { - return this.jsonSchemaObject !== "{}"; + return this.jsonSchemaObject.description ? true : false; } isFormValid(): boolean { @@ -142,7 +125,7 @@ export function getPolicyDialogProperties( const instanceJson = instance ? instance.policy_data : null; const name = policyTypeSchema.name; const ric = instance ? instance.ric_id : null; - return { + const data = { maxWidth: "1200px", maxHeight: "900px", width: "900px", @@ -156,5 +139,6 @@ export function getPolicyDialogProperties( name, ric, }, - }; + } as MatDialogConfig; + return data; }