public override async Task <IDisplayResult> UpdateAsync(ContentPartFieldDefinition partFieldDefinition, UpdatePartFieldEditorContext context) { if (partFieldDefinition.Editor() == "Monaco") { var model = new MonacoSettingsViewModel(); var settings = new TextFieldMonacoEditorSettings(); await context.Updater.TryUpdateModelAsync(model, Prefix); if (!model.Options.IsJson()) { context.Updater.ModelState.AddModelError(Prefix + "." + nameof(MonacoSettingsViewModel.Options), S["The options are written in an incorrect format."]); } else { settings.Options = model.Options; context.Builder.WithSettings(settings); } } return(Edit(partFieldDefinition, context.Updater)); }
public override async Task <IDisplayResult> UpdateAsync(ContentTypePartDefinition contentTypePartDefinition, UpdateTypePartEditorContext context) { if (contentTypePartDefinition.Editor() == "Monaco") { var model = new MonacoSettingsViewModel(); var settings = new HtmlBodyPartMonacoEditorSettings(); await context.Updater.TryUpdateModelAsync(model, Prefix); if (!model.Options.IsJson()) { context.Updater.ModelState.AddModelError(Prefix + "." + nameof(MonacoSettingsViewModel.Options), S["The options are written in an incorrect format."]); } else { var jsonSettings = JObject.Parse(model.Options); jsonSettings["language"] = "html"; settings.Options = jsonSettings.ToString(); context.Builder.WithSettings(settings); } } return(Edit(contentTypePartDefinition, context.Updater)); }