fix(chart): show correct chart type in previews

- Use NoteChart directly with props instead of NoteChartFromCode
- Remove markdown ticks from chartSuggestionToMarkdown output
- Export NoteChart component for direct use in previews

Now the 3 suggestions correctly show different chart types.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Antigravity
2026-05-23 10:00:44 +00:00
parent 835e1872bb
commit d1395d9b81
4 changed files with 17 additions and 16 deletions

View File

@@ -291,18 +291,12 @@ export const RichTextEditor = forwardRef<RichTextEditorHandle, RichTextEditorPro
setChartSuggestionsOpen(true)
}, [editor])
const handleSelectChart = useCallback((markdown: string) => {
const handleSelectChart = useCallback((chartContent: string) => {
if (!editor || !editor.isEditable) return
try {
// Convert markdown chart to HTML format for TipTap
// Input: ```chart\nbar\nTitle\nlabel: value\n```
// Output: <pre><code class="language-chart">bar\nTitle\nlabel: value</code></pre>
const chartContent = markdown
.replace(/```chart\n?/gi, '')
.replace(/```$/gi, '')
.trim()
// chartContent is now raw content without markdown ticks
// Example: "bar\nTitle\nlabel: value"
const htmlContent = `<pre><code class="language-chart">${chartContent}</code></pre>`
// Insert the chart HTML at current position
@@ -321,7 +315,7 @@ export const RichTextEditor = forwardRef<RichTextEditorHandle, RichTextEditorPro
}
}
// Insert the chart as HTML (not markdown)
// Insert the chart as HTML
editor.chain().focus().insertContent(htmlContent).run()
} catch (error) {
console.error('[handleSelectChart] Failed to insert chart:', error)