[compose] IJPL-213313 Markdown: enable GitHub alerts

(cherry picked from commit bcc4137372f0dbca33653847006ad7da66c2f14b)

IJ-CR-178959

GitOrigin-RevId: 93079635fdedf30fd5f3328eb64729b56b11419e
This commit is contained in:
Alexander Kuznetsov
2025-10-17 14:15:23 +00:00
committed by intellij-monorepo-bot
parent 13f1e3ccaf
commit ec7f32c446
@@ -48,10 +48,14 @@ import org.jetbrains.jewel.bridge.toComposeColor
import org.jetbrains.jewel.foundation.ExperimentalJewelApi
import org.jetbrains.jewel.foundation.code.highlighting.NoOpCodeHighlighter
import org.jetbrains.jewel.intui.markdown.bridge.ProvideMarkdownStyling
import org.jetbrains.jewel.intui.markdown.bridge.styling.extensions.github.alerts.create
import org.jetbrains.jewel.intui.markdown.bridge.styling.extensions.github.tables.create
import org.jetbrains.jewel.markdown.Markdown
import org.jetbrains.jewel.markdown.MarkdownMode
import org.jetbrains.jewel.markdown.extensions.autolink.AutolinkProcessorExtension
import org.jetbrains.jewel.markdown.extensions.github.alerts.AlertStyling
import org.jetbrains.jewel.markdown.extensions.github.alerts.GitHubAlertProcessorExtension
import org.jetbrains.jewel.markdown.extensions.github.alerts.GitHubAlertRendererExtension
import org.jetbrains.jewel.markdown.extensions.github.strikethrough.GitHubStrikethroughProcessorExtension
import org.jetbrains.jewel.markdown.extensions.github.strikethrough.GitHubStrikethroughRendererExtension
import org.jetbrains.jewel.markdown.extensions.github.tables.GfmTableStyling
@@ -98,6 +102,7 @@ internal class MarkdownComposePanel(
val processor = remember(markdownMode) {
MarkdownProcessor(
listOf(
GitHubAlertProcessorExtension,
GitHubTableProcessorExtension,
GitHubStrikethroughProcessorExtension(),
AutolinkProcessorExtension,
@@ -108,9 +113,12 @@ internal class MarkdownComposePanel(
val tableRenderer = remember(markdownStyling) {
GitHubTableRendererExtension(GfmTableStyling.create(), markdownStyling)
}
val alertRenderer = remember(markdownStyling) {
GitHubAlertRendererExtension(AlertStyling.create(), markdownStyling)
}
val coilContext = LocalPlatformContext.current
val imageRendererExtension = remember(coilContext) { Coil3ImageRendererExtension.withDefaultLoader(coilContext) }
val allRenderingExtensions = listOf(tableRenderer, GitHubStrikethroughRendererExtension, imageRendererExtension)
val allRenderingExtensions = listOf(tableRenderer, alertRenderer, GitHubStrikethroughRendererExtension, imageRendererExtension)
val blockRenderer = remember(markdownStyling) {
ScrollSyncMarkdownBlockRenderer(
markdownStyling,