Feat: Write the thinking style in the MarkdownContent layer #4930 (#5091)

### What problem does this PR solve?

Feat: Write the thinking style in the MarkdownContent layer #4930

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu 2025-02-18 19:34:54 +08:00 committed by GitHub
parent 189007e44d
commit f8b80f3f93
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 13 additions and 9 deletions

View File

@ -20,13 +20,6 @@
& > p {
margin: 0;
}
:global(section.think) {
padding-left: 10px;
color: #8b8b8b;
border-left: 2px solid #d5d3d3;
margin-bottom: 10px;
font-size: 12px;
}
}
.messageText {
.chunkText();

View File

@ -1,3 +1,13 @@
.markdownContentWrapper {
:global(section.think) {
padding-left: 10px;
color: #8b8b8b;
border-left: 2px solid #d5d3d3;
margin-bottom: 10px;
font-size: 12px;
}
}
.referencePopoverWrapper {
max-width: 50vw;
}

View File

@ -52,7 +52,7 @@ const MarkdownContent = ({
}
const nextText = replaceTextByOldReg(text);
return loading
? nextText?.concat('~~2$$')
? nextText?.concat('~~2$$') // TODO: The style of thinking also needs to be displayed when outputting
: pipe(replaceThinkToSection, preprocessLaTeX)(nextText);
}, [content, loading, t]);
@ -186,6 +186,7 @@ const MarkdownContent = ({
<Markdown
rehypePlugins={[rehypeWrapReference, rehypeKatex, rehypeRaw]}
remarkPlugins={[remarkGfm, remarkMath]}
className={styles.markdownContentWrapper}
components={
{
'custom-typography': ({ children }: { children: string }) =>

View File

@ -50,7 +50,7 @@ export const preprocessLaTeX = (content: string) => {
return inlineProcessedContent;
};
export function replaceThinkToSection(text: string) {
export function replaceThinkToSection(text: string = '') {
const pattern = /<think>([\s\S]*?)<\/think>/g;
const result = text.replace(pattern, '<section class="think">$1</section>');