Skip to content

Fix Markdown block rendering in Text#875

Open
esconner wants to merge 2 commits intotwostraws:mainfrom
esconner:fix/markdown-rendering-bug
Open

Fix Markdown block rendering in Text#875
esconner wants to merge 2 commits intotwostraws:mainfrom
esconner:fix/markdown-rendering-bug

Conversation

@esconner
Copy link
Copy Markdown

@esconner esconner commented Apr 4, 2026

Fixes #874

This changes Text(markdown:) and Text(markup:parser:) to preserve block Markdown structure instead of doing fragile HTML string
splitting.

What changed:

  • stop stripping the first heading from Text Markdown bodies
  • detect the true single-paragraph case from parsed HTML
  • render block Markdown inside a container so headings/lists/paragraphs remain valid
  • escape plain text and inline/code block contents in MarkdownToHTML so the renderer always produces valid HTML

Tests:

  • preserve multiple headings in Text(markdown:)
  • avoid invalid paragraph output for mixed block Markdown
  • preserve block structure for headings + lists
  • cover the same behavior through Text(markup:parser:)
  • verify Markdown text/code escaping in MarkdownToHTML

Validation:

  • validated in a separate Ignite-based project against real integration content and against IgniteSamples

@esconner
Copy link
Copy Markdown
Author

esconner commented Apr 5, 2026 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Text(markdown:) drops headings and can generate invalid HTML for block Markdown

1 participant