import { HttpErrorResponse } from '@angular/common/http';
import { ErrorDialogService } from '../services/ui/error-dialog.service';
import * as uuid from 'uuid';
+import { Ric } from '../interfaces/ric';
@Component({
selector: 'rd-no-type-policy-instance-dialog',
styleUrls: ['./no-type-policy-instance-dialog.component.scss']
})
export class NoTypePolicyInstanceDialogComponent implements OnInit {
-
- // Declare following variables as Public variable. Private variables should not be used in template HTML
instanceForm: FormGroup;
policyInstanceId: string; // null if not yet created
policyJson: string;
darkMode: boolean;
ric: string;
- allRics: string[];
+ allRics: Ric[];
constructor(
private policySvc: PolicyService,
@Inject(MAT_DIALOG_DATA) private data,
private ui: UiService) {
this.policyInstanceId = data.instanceId;
- this.policyJson = data.instanceJson ? JSON.stringify(JSON.parse(data.instanceJson), null, 2) : '';
+ this.policyJson = data.instanceJson ? this.formatJsonString(data.instanceJson) : '';
this.ric = data.ric;
}
onSubmit() {
if (this.policyInstanceId == null) {
- this.policyInstanceId = uuid.v4();
+ this.policyInstanceId = uuid.v4();
}
const self: NoTypePolicyInstanceDialogComponent = this;
this.policySvc.putPolicy('', this.policyInstanceId, this.policyJsonTextArea.value, this.ric).subscribe(
const self: NoTypePolicyInstanceDialogComponent = this;
this.policySvc.getRics('').subscribe(
{
- next(value) {
+ next(value:Ric[]) {
self.allRics = value;
console.log(value);
},
complete() { }
});
}
+
+ private formatJsonString(jsonToFormat: any) {
+ return JSON.stringify(jsonToFormat, null, 2);
+ }
+
+ formatJsonInput() {
+ this.policyJson = this.formatJsonString(JSON.parse(this.policyJsonTextArea.value));
+ }
}
export function jsonValidator(): ValidatorFn {