Beispiel #1
0
 public Task SaveRenderingMarkdownSettingsModelAsync(RenderingMarkdownSettingsModel model)
 {
     return(Task.WhenAll(
                IsHtmlEnabled(model.IsHtmlEnabled),
                IsAbbreviationEnabled(model.IsAbbreviationEnabled),
                IsAutoIdentifierEnabled(model.IsAutoIdentifierEnabled),
                IsAutoLinkEnabled(model.IsAutoLinkEnabled),
                IsBootstrapEnabled(model.IsBootstrapEnabled),
                IsCitationEnabled(model.IsCitationEnabled),
                IsDefinitionListEnabled(model.IsDefinitionListEnabled),
                IsEmojiSmileyEnabled(model.IsEmojiSmileyEnabled),
                IsFigureEnabled(model.IsFigureEnabled),
                IsFooterEnabled(model.IsFooterEnabled),
                IsFootnoteEnabled(model.IsFootnoteEnabled),
                IsMedialinkEnabled(model.IsMedialinkEnabled),
                IsSoftlineAsHardlineBreakEnabled(model.IsSoftlineAsHardlineBreakEnabled),
                IsSmartyPantEnabled(model.IsSmartyPantEnabled),
                IsGenericAttributeEnabled(model.IsGenericAttributeEnabled),
                IsDiagramEnabled(model.IsDiagramEnabled),
                IsMermaidEnabled(model.IsMermaidEnabled),
                IsNomnomlEnabled(model.IsNomnomlEnabled),
                IsEmphasisEnabled(model.IsEmphasisEnabled),
                IsStrikethroughEnabled(model.IsStrikethroughEnabled),
                IsSuperSubScriptEnabled(model.IsSuperSubScriptEnabled),
                IsInsertedEnabled(model.IsInsertedEnabled),
                IsMarkedEnabled(model.IsMarkedEnabled),
                IsListEnabled(model.IsListEnabled),
                IsTaskListEnabled(model.IsTaskListEnabled),
                IsListExtraEnabled(model.IsListExtraEnabled),
                IsMathEnabled(model.IsMathEnabled),
                IsSyntaxHighlightingEnabled(model.IsSyntaxHighlightingEnabled),
                IsTableEnabled(model.IsTableEnabled),
                IsGridTableEnabled(model.IsGridTableEnabled),
                IsPipeTableEnabled(model.IsPipeTableEnabled)
                ));
 }
        private async Task SaveRenderingMarkdownModel()
        {
            var model = new RenderingMarkdownSettingsModel();

            foreach (var renderModel in RenderMarkdownToHtmlModels)
            {
                switch (renderModel.Type)
                {
                case RenderMarkdownToHtmlType.Core:
                {
                    var sourceModel = (CoreRenderModel)renderModel;
                    model.IsHtmlEnabled                    = sourceModel.IsHtmlTagEnabled;
                    model.IsAbbreviationEnabled            = sourceModel.IsAbbreviationEnabled;
                    model.IsAutoIdentifierEnabled          = sourceModel.IsAutoIdentifierEnabled;
                    model.IsAutoLinkEnabled                = sourceModel.IsAutoLinkEnabled;
                    model.IsBootstrapEnabled               = sourceModel.IsBootstrapEnabled;
                    model.IsCitationEnabled                = sourceModel.IsCitationEnabled;
                    model.IsDefinitionListEnabled          = sourceModel.IsDefinitionListEnabled;
                    model.IsEmojiSmileyEnabled             = sourceModel.IsEmojiSmileyEnabled;
                    model.IsFigureEnabled                  = sourceModel.IsFigureEnabled;
                    model.IsFooterEnabled                  = sourceModel.IsFooterEnabled;
                    model.IsFootnoteEnabled                = sourceModel.IsFootnoteEnabled;
                    model.IsMedialinkEnabled               = sourceModel.IsMediaLinkEnabled;
                    model.IsSoftlineAsHardlineBreakEnabled = sourceModel.IsSoftLineAsHardlineBreakEnabled;
                    model.IsSmartyPantEnabled              = sourceModel.IsSmartyPantEnabled;
                    model.IsGenericAttributeEnabled        = sourceModel.IsGenericAttributeEnabled;
                    break;
                }

                case RenderMarkdownToHtmlType.CustomContainer:
                {
                    break;
                }

                case RenderMarkdownToHtmlType.EmphasisExtra:
                {
                    var sourceModel = (EmphasisExtraRenderModel)renderModel;

                    model.IsEmphasisEnabled = sourceModel.IsEnabled;

                    model.IsStrikethroughEnabled  = sourceModel.IsStrikethroughEnabled;
                    model.IsSuperSubScriptEnabled = sourceModel.IsSuperSubScriptEnabled;
                    model.IsInsertedEnabled       = sourceModel.IsInsertedEnabled;
                    model.IsMarkedEnabled         = sourceModel.IsMarkedEnabled;
                    break;
                }

                case RenderMarkdownToHtmlType.List:
                {
                    var sourceModel = (ListRenderModel)renderModel;

                    model.IsListEnabled      = sourceModel.IsEnabled;
                    model.IsTaskListEnabled  = sourceModel.IsTaskListEnabled;
                    model.IsListExtraEnabled = sourceModel.IsListExtraEnabled;

                    break;
                }

                case RenderMarkdownToHtmlType.Mathematics:
                {
                    var sourceModel = (MathRenderModel)renderModel;

                    model.IsMathEnabled = sourceModel.IsEnabled;

                    break;
                }

                case RenderMarkdownToHtmlType.Table:
                {
                    var sourceModel = (TableRenderModel)renderModel;

                    model.IsTableEnabled = sourceModel.IsEnabled;

                    model.IsGridTableEnabled = sourceModel.IsGridTableEnabled;
                    model.IsPipeTableEnabled = sourceModel.IsPipeTableEnabled;

                    break;
                }

                case RenderMarkdownToHtmlType.YamlFrontMatter:
                    break;

                case RenderMarkdownToHtmlType.SyntaxHighlighting:
                {
                    var sourceModel = (SyntaxHighlightingRenderModel)renderModel;

                    model.IsSyntaxHighlightingEnabled = sourceModel.IsEnabled;
                    break;
                }

                case RenderMarkdownToHtmlType.Diagram:
                {
                    var sourceModel = (DiagramRenderModel)renderModel;

                    model.IsDiagramEnabled = sourceModel.IsEnabled;

                    model.IsMermaidEnabled = sourceModel.IsMermaidEnabled;
                    model.IsNomnomlEnabled = sourceModel.IsNomnomlEnabled;

                    break;
                }

                case RenderMarkdownToHtmlType.Globalization:
                    break;

                case RenderMarkdownToHtmlType.JiraLinks:
                    break;

                case RenderMarkdownToHtmlType.PreciseSourceLocation:
                    break;

                case RenderMarkdownToHtmlType.SelfPipeline:
                    break;

                default:
                    throw new ArgumentOutOfRangeException(nameof(renderModel));
                }
            }

            await _markdown.SaveRenderingMarkdownSettingsModelAsync(model);

            RenderMarkdownToHtmlModels.Clear();

            await LoadMarkdownToHtmlListItems();
        }