diff --git a/webui/src/components/MarkdownTextRenderer.tsx b/webui/src/components/MarkdownTextRenderer.tsx index f43c42071..5f2a23510 100644 --- a/webui/src/components/MarkdownTextRenderer.tsx +++ b/webui/src/components/MarkdownTextRenderer.tsx @@ -642,7 +642,9 @@ export default function MarkdownTextRenderer({
  • p]:m-0", + taskItem + ? "flex min-w-0 items-start gap-2 text-[13px] leading-5 [&>p]:m-0" + : "[&>p]:inline", )} > {markdownChildren} diff --git a/webui/src/tests/markdown-text-renderer.test.tsx b/webui/src/tests/markdown-text-renderer.test.tsx index 53221fb4a..0e445b735 100644 --- a/webui/src/tests/markdown-text-renderer.test.tsx +++ b/webui/src/tests/markdown-text-renderer.test.tsx @@ -405,6 +405,26 @@ describe("MarkdownTextRenderer", () => { expect(screen.queryByRole("button", { name: /tasks/i })).not.toBeInTheDocument(); }); + it("keeps loose ordered-list titles beside their markers", () => { + const { container } = render( + + { + "1. **一个约 16 MB 的 CLI 可执行文件**\n - `~/.local/bin/inferencesh`\n - `belt` 和 `infsh` 只是指向它的软链接。\n\n2. **登录凭据文件**\n - `~/.inferencesh/config.json`\n - 权限是 `600`。\n\n3. **Shell PATH 配置**\n - `.zshrc`" + } + , + ); + + const items = container.querySelectorAll("ol > li"); + expect(items).toHaveLength(3); + expect(items[0]).toHaveClass("[&>p]:inline"); + expect(items[0].firstElementChild).toHaveTextContent( + "一个约 16 MB 的 CLI 可执行文件", + ); + expect(items[0].querySelector("ul")).toHaveTextContent( + "~/.local/bin/inferencesh", + ); + }); + it("renders GFM tables in a responsive data surface", () => { const { container } = render(