fun defaultContent()

in richtext-commonmark/src/commonMain/kotlin/com/halilibo/richtext/markdown/MarkdownRichText.kt [100:160]


  fun defaultContent(currentNode: AstNode): Int? {
    return when (val currentNodeType = currentNode.type) {
      is AstCode -> {
        richTextStringBuilder.withFormat(RichTextString.Format.Code) {
          append(currentNodeType.literal)
        }
        null
      }

      is AstEmphasis -> richTextStringBuilder.pushFormat(RichTextString.Format.Italic)
      is AstStrikethrough -> richTextStringBuilder.pushFormat(
        RichTextString.Format.Strikethrough
      )

      is AstImage -> {
        richTextStringBuilder.appendInlineContent(
          content = InlineContent(
            initialSize = {
              IntSize(128.dp.roundToPx(), 128.dp.roundToPx())
            }
          ) {
            RemoteImage(
              url = currentNodeType.destination,
              contentDescription = currentNodeType.title,
              modifier = Modifier.fillMaxWidth(),
              contentScale = ContentScale.Inside,
            )

          }
        )
        null
      }

      is AstLink -> richTextStringBuilder.pushFormat(RichTextString.Format.Link(
        onClick = { onLinkClicked(currentNodeType.destination) }
      ))

      is AstSoftLineBreak -> {
        richTextStringBuilder.append(" ")
        null
      }

      is AstHardLineBreak -> {
        richTextStringBuilder.append("\n")
        null
      }

      is AstStrongEmphasis -> richTextStringBuilder.pushFormat(RichTextString.Format.Bold)
      is AstText -> {
        richTextStringBuilder.append(currentNodeType.literal)
        null
      }

      is AstLinkReferenceDefinition -> richTextStringBuilder.pushFormat(
        RichTextString.Format.Link(
          onClick = { onLinkClicked(currentNodeType.destination) }
        ))

      else -> null
    }
  }