'use client'
import { escapeHtml } from '@admin/utils/editor/escape-html'
import { renderSimpleMarkdownBody } from '@admin/utils/editor/render-simple-markdown-body'
import { sanitizeHtmlPreview } from '@admin/utils/editor/sanitize-html-preview'
import { stripHtml } from '@admin/utils/editor/strip-html'
export function renderDetailsPreview(raw: string) {
const match =
/^]*>\s*]*>([\s\S]*?)<\/summary>([\s\S]*?)<\/details>$/i.exec(
raw.trim()
)
if (!match) {
return sanitizeHtmlPreview(raw)
}
const summary = escapeHtml(stripHtml(match[1]).trim())
const body = renderSimpleMarkdownBody(match[2])
return sanitizeHtmlPreview(`${summary}
${body} `)
}