fix: wire markdown variant renderer

This commit is contained in:
Peter Steinberger
2026-01-16 09:19:20 +00:00
parent 4965727f39
commit 949fa1051f
3 changed files with 14 additions and 10 deletions

View File

@@ -43,12 +43,17 @@ private struct ChatMarkdownStyle: ViewModifier {
let textColor: Color
func body(content: Content) -> some View {
content
.font(self.font)
.foregroundStyle(self.textColor)
.textual.structuredTextStyle(self.variant == .compact ? .default : .gitHub)
.textual.inlineStyle(self.inlineStyle)
.textual.textSelection(.enabled)
Group {
if self.variant == .compact {
content.textual.structuredTextStyle(.default)
} else {
content.textual.structuredTextStyle(.gitHub)
}
}
.font(self.font)
.foregroundStyle(self.textColor)
.textual.inlineStyle(self.inlineStyle)
.textual.textSelection(.enabled)
}
private var inlineStyle: InlineStyle {

View File

@@ -487,10 +487,11 @@ extension ChatTypingIndicatorBubble: @MainActor Equatable {
@MainActor
struct ChatStreamingAssistantBubble: View {
let text: String
let markdownVariant: ChatMarkdownVariant
var body: some View {
VStack(alignment: .leading, spacing: 10) {
ChatAssistantTextBody(text: self.text)
ChatAssistantTextBody(text: self.text, markdownVariant: self.markdownVariant)
}
.padding(12)
.background(
@@ -594,8 +595,6 @@ private struct TypingDots: View {
}
}
@MainActor
@MainActor
private struct ChatAssistantTextBody: View {
let text: String
let markdownVariant: ChatMarkdownVariant

View File

@@ -179,7 +179,7 @@ public struct ClawdbotChatView: View {
}
if let text = self.viewModel.streamingAssistantText, AssistantTextParser.hasVisibleContent(in: text) {
ChatStreamingAssistantBubble(text: text)
ChatStreamingAssistantBubble(text: text, markdownVariant: self.markdownVariant)
.frame(maxWidth: .infinity, alignment: .leading)
}
}