Add support for checkbox lists, indented code blocks, and escaped characters. Extend tests for new Markdown features. Update project version to 1.0.4.

This commit is contained in:
2026-01-07 14:56:58 +01:00
parent 6d7d05a0d4
commit ab2572d95d
14 changed files with 242 additions and 12 deletions

View File

@@ -1,12 +1,18 @@
package nl.astraeus.markdown.parser
data class CheckboxItem(
val line: Int,
val checked: Boolean,
val text: String,
)
sealed class MarkdownPart {
data object NewLine : MarkdownPart()
data object PageBreak : MarkdownPart()
sealed class ParagraphPart() {
sealed class ParagraphPart {
data class Text(
val text: String
) : ParagraphPart()
@@ -44,6 +50,10 @@ sealed class MarkdownPart {
class InlineCode(
val text: String
) : ParagraphPart()
data class IndentedCode(
val code: String
) : ParagraphPart()
}
data class Paragraph(
@@ -59,6 +69,10 @@ sealed class MarkdownPart {
val lines: List<String>,
) : MarkdownPart()
data class CheckboxList(
val lines: List<CheckboxItem>,
) : MarkdownPart()
data class OrderedList(
val lines: List<String>,
) : MarkdownPart()