Commit graph

32 commits

Author SHA1 Message Date
yangdx
411290a013 Add mhchem extension support for chemistry formulas in ChatMessage
(cherry picked from commit aeaa0b32f9)
2025-12-04 19:09:07 +08:00
yangdx
86195c613e Fix linting 2025-09-29 13:10:25 +08:00
yangdx
924d459420 feat(webui): Enhance KaTeX rendering and add robust error handling
- Differentiates between inline ($...$) and display ($$..$$) math for proper styling and layout.
- Adds custom CSS to ensure formulas correctly inherit text color, fixing issues in dark/light themes.
- Implements responsive handling for long formulas by allowing horizontal scrolling, preventing page overflow.
- Introduces a silent `errorCallback` for KaTeX to suppress console errors from invalid LaTeX syntax in production, while retaining warnings in development.
- Refactors KaTeX plugin loading to be more robust and simplifies CSS import by moving it to `main.tsx`.
2025-09-28 22:50:33 +08:00
yangdx
b18c7d85ef Improve text contrast and visibility in dark theme for chat messages
• Enhanced border visibility in dark mode
• Improved thinking progress text contrast
• Added explicit text color classes
• Better user/assistant message distinction
• Fixed dark theme readability issues
2025-09-28 21:33:19 +08:00
yangdx
b6a1832324 feat: prevent LaTeX parsing errors during streaming by implementing completeness detection
- Add latexRendered flag to control KaTeX plugin application
- Implement detectLatexCompleteness function to check formula closure
- Maintain backward compatibility for historical messages
2025-09-28 20:59:56 +08:00
yangdx
335114fd7e Add KaTeX mhchem extension support and improve math rendering
- Import mhchem globally
- Add TypeScript declarations
- Fix KaTeX overflow styling
- Change p tags to div in markdown
- Update tsconfig includes
2025-09-28 15:13:04 +08:00
yangdx
72039e0b4e Add strict: false and trust: true to KaTeX plugin configuration
• Relaxes KaTeX parsing rules
• Enables trusted LaTeX commands
• Improves math rendering compatibility
• Applied to both markdown processors
2025-09-25 17:28:01 +08:00
yangdx
d1b3661a87 Add footnotes support to markdown rendering in chat messages
• Add unist-util-visit dependency
• Create remarkFootnotes plugin
• Style footnotes with CSS classes
• Support footnote refs and definitions
• Update Vite config for new dependency
2025-09-25 01:42:16 +08:00
yangdx
95987ff56c Add rehype-raw plugin for better HTML rendering in markdown
• Add rehype-raw dependency
• Enable HTML parsing in markdown
• Style sup/sub/mark/u/del/ins elements
• Apply to both thinking and main content
• Improve markdown display capabilities
2025-09-24 21:37:03 +08:00
yangdx
3d7635e097 refactor: addinging copy buttons beside each message 2025-09-24 20:43:22 +08:00
yangdx
17dd56e41c Improve code highlighting with context-aware styling and inline detection
• Add messageRole prop to CodeHighlight
• Remove unused Element type import
• Replace node-based inline detection
• Add theme-aware inline code styles
• Update dependency arrays in useMemo
2025-09-22 01:41:58 +08:00
yangdx
f1d6d949f1 Fix assistant message display content fallback logic
- Handle undefined vs empty string cases
- Prevent COT content keep rendering before </think> tag recieved
2025-09-09 11:39:59 +08:00
yangdx
3912b7d281 Fix assistant message display with content fallback
• Add content fallback for compatibility
• Update comment for clarity
• Prevent empty assistant messages
2025-09-08 23:35:31 +08:00
yangdx
eeff0d5c67 Fix thinking state management and UI improvements for chat messages
- Reset expansion state on new thinking
- Prevent content leakage during thinking
- Update thinkingTime type to allow null
- Add memory leak prevention cleanup
- Add missing i18n translations
2025-09-08 18:47:41 +08:00
yangdx
2ba10dbb5b Add AI thinking process display with expandable UI and timing
- Add thinking fields to Message type
- Create expandable thinking section
- Track thinking time during streaming
2025-09-08 18:09:04 +08:00
yangdx
e54bcff85c Add suppressErrorRendering to mermaid config 2025-07-16 01:01:22 +08:00
yangdx
b7a60a5895 fix: use dynamic imports for KaTeX to resolve module initialization error
- Prevents circular dependency issues that caused "Cannot accexss 'gm' before initialization" errors when rendering LaTeX formulas.
2025-06-02 18:10:53 +08:00
yangdx
7f50a11977 feat: add LaTeX formula rendering support to ChatMessage component
- Add KaTeX dependencies (katex, rehype-katex, @types/katex)
- Configure ReactMarkdown with rehype-katex plugin
- Support both inline ($...$) and block ($$...$$) LaTeX formulas
- Add theme-aware error handling and responsive styling
2025-06-02 17:44:10 +08:00
yangdx
1509e3985e Resolve json code block freezing issue 2025-05-07 04:35:53 +08:00
yangdx
936587d4dd Adjust width of chat message box from server 2025-04-29 19:19:22 +08:00
yangdx
53f9ef77f9 Fix linting 2025-04-26 12:32:01 +08:00
yangdx
9792841a07 Stablize mermaid render in history messages 2025-04-26 12:30:29 +08:00
yangdx
e0d99d3c29 Postpond mermaid rendering untill streaming streaming respond stopped. 2025-04-26 10:16:13 +08:00
yangdx
a9dcf4d5ca Change chat message component width to 90% 2025-04-22 17:52:48 +08:00
yangdx
64f5bb0243 Add typography to webui and fix markdown render problem 2025-04-22 17:21:24 +08:00
yangdx
be032db1f8 Fix linting 2025-04-22 09:05:23 +08:00
choizhang
333c43fbdf refactor: Fixed redundant blank characters in message content 2025-04-22 01:25:18 +08:00
choizhang
522080e44f feat(chat): Add Mermaid chart support and optimize code highlighting. Resolve the issue of streaming returns 2025-04-21 15:50:13 +08:00
baoheping
59a2202e7c Added Minimum Degree 2025-03-08 11:01:10 +00:00
ArnoChen
40a1a94a31 add graph depth and layout iteration settings 2025-02-25 18:32:53 +08:00
ArnoChen
dbf5481959 replace react-shiki with react-syntax-highlighter to reduce package size 2025-02-24 18:58:57 +08:00
ArnoChen
e2b4e661e3 feat: retrieval message code highlight, message copy button 2025-02-24 18:17:17 +08:00