mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-08-12 15:48:59 +08:00
### What problem does this PR solve? Fix: Fixed the issue where two consecutive indexes were displayed incorrectly #3839 ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
parent
74c6b21f3b
commit
409acf0d9f
@ -23,7 +23,7 @@ import 'katex/dist/katex.min.css'; // `rehype-katex` does not import the CSS for
|
||||
import { replaceTextByOldReg } from '../utils';
|
||||
import styles from './index.less';
|
||||
|
||||
const reg = /(#{2}\d+@{2})/g;
|
||||
const reg = /(~{2}\d+={2})/g;
|
||||
const curReg = /(~{2}\d+\${2})/g;
|
||||
|
||||
const getChunkIndex = (match: string) => Number(match.slice(2, -2));
|
||||
@ -47,7 +47,8 @@ const MarkdownContent = ({
|
||||
if (text === '') {
|
||||
text = t('chat.searching');
|
||||
}
|
||||
return loading ? text?.concat('~~2$$') : text;
|
||||
const nextText = replaceTextByOldReg(text);
|
||||
return loading ? nextText?.concat('~~2$$') : nextText;
|
||||
}, [content, loading, t]);
|
||||
|
||||
useEffect(() => {
|
||||
@ -157,9 +158,7 @@ const MarkdownContent = ({
|
||||
|
||||
const renderReference = useCallback(
|
||||
(text: string) => {
|
||||
const nextText = replaceTextByOldReg(text);
|
||||
|
||||
let replacedText = reactStringReplace(nextText, reg, (match, i) => {
|
||||
let replacedText = reactStringReplace(text, reg, (match, i) => {
|
||||
const chunkIndex = getChunkIndex(match);
|
||||
return (
|
||||
<Popover content={getPopoverContent(chunkIndex)} key={i}>
|
||||
|
@ -44,8 +44,9 @@ export const buildMessageItemReference = (
|
||||
|
||||
const oldReg = /(#{2}\d+\${2})/g;
|
||||
|
||||
// To be compatible with the old index matching mode
|
||||
export const replaceTextByOldReg = (text: string) => {
|
||||
return text.replace(oldReg, function (substring) {
|
||||
return `${substring.slice(0, -2)}@@`;
|
||||
return `~~${substring.slice(2, -2)}==`;
|
||||
});
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user