feat: fixed markdown parser

This commit is contained in:
Nick 2024-12-27 14:49:27 -06:00
parent e6f3a09919
commit 185d922ffb

View file

@ -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