From 185d922ffb751f4053e903436b091d3debbe8215 Mon Sep 17 00:00:00 2001 From: Nick Date: Fri, 27 Dec 2024 14:49:27 -0600 Subject: [PATCH] feat: fixed markdown parser --- frontend/src/Config/Helpers/Markdown.elm | 54 ++++++------------------ 1 file changed, 14 insertions(+), 40 deletions(-) diff --git a/frontend/src/Config/Helpers/Markdown.elm b/frontend/src/Config/Helpers/Markdown.elm index 854bd2f..5f46868 100755 --- a/frontend/src/Config/Helpers/Markdown.elm +++ b/frontend/src/Config/Helpers/Markdown.elm @@ -57,32 +57,19 @@ articleImage pic = renderDeviceMarkdown : String -> Element msg renderDeviceMarkdown markdown = - case - markdown - |> String.split "\n" - |> List.map String.trimRight - |> String.join "\n" - |> Markdown.Parser.parse - of - Ok ast -> - case Markdown.Renderer.render elmUiRenderer ast of - Ok rendered -> - column - [ width fill - , centerX - , spacing 10 - ] - rendered - - Err errors -> - text errors + case renderMarkdown markdown of + Ok ( toc, renderedMarkdown ) -> + paragraph [] + [ column + [ width fill + , centerX + , spacing 10 + ] + (tocView toc :: renderedMarkdown) + ] Err error -> - text - (error - |> List.map Markdown.Parser.deadEndToString - |> String.join "\n" - ) + E.text error renderMarkdown : String -> Result String ( TableOfContents, List (Element msg) ) @@ -102,11 +89,7 @@ renderMarkdown markdown = Err errors Err error -> - Err - (error - |> List.map Markdown.Parser.deadEndToString - |> String.join "\n" - ) + Err (error |> List.map Markdown.Parser.deadEndToString |> String.join "\n") renderDeviceMarkdownNoToc : String -> Element msg @@ -376,18 +359,9 @@ elmUiRenderer = , B.color colourTheme.backgroundLightGrey , paragraphFontSize , width fill - , E.spacing 10 + , spacing 10 ] - (List.map - (\child -> - E.paragraph - [ width fill - , E.spacing 5 - ] - [ child ] - ) - children - ) + children , unorderedList = \items -> E.column