Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@Div627
Copy link
Contributor

@Div627 Div627 commented Dec 8, 2025

中文版模板 / Chinese template

🤔 This is a ...

  • 🆕 New feature
  • 🐞 Bug fix
  • 📝 Site / documentation improvement
  • 📽️ Demo improvement
  • 💄 Component style improvement
  • 🤖 TypeScript definition improvement
  • 📦 Bundle size optimization
  • ⚡️ Performance optimization
  • ⭐️ Feature enhancement
  • 🌐 Internationalization
  • 🛠 Refactoring
  • 🎨 Code style optimization
  • ✅ Test Case
  • 🔀 Branch merge
  • ⏩ Workflow
  • ⌨️ Accessibility improvement
  • ❓ Other (about what?)

🔗 Related Issues

  • Describe the source of related requirements, such as links to relevant issue discussions.
  • For example: close #xxxx, fix #xxxx

💡 Background and Solution

  • The specific problem to be addressed.
  • List the final API implementation and usage if needed.
  • If there are UI/interaction changes, consider providing screenshots or GIFs.

📝 Change Log

Language Changelog
🇺🇸 English Move Mermaid from peerDependencies to dependencies.
🇨🇳 Chinese 将 Mermaid 从 peerDependencies 移动到 dependencies。

Summary by CodeRabbit

发布说明

  • 重构 (Refactor)

    • 优化了 Mermaid 组件的初始化流程,改为在组件挂载时进行初始化以改善运行时行为。
  • 测试 (Tests)

    • 为 Mermaid 组件新增全面测试覆盖,包含变换样式、缩放/拖拽交互、代码视图切换、下载与复制功能及多种边界情况。
  • 杂务 (Chores)

    • 调整依赖配置:将 Mermaid 包移入运行时依赖并清理了原有的 dev/peer 配置。

✏️ Tip: You can customize this high-level summary in your review settings.

@codecov
Copy link

codecov bot commented Dec 8, 2025

Bundle Report

Changes will increase total bundle size by 138.0kB (7.4%) ⬆️⚠️, exceeding the configured threshold of 5%.

Bundle name Size Change
antdx-array-push 1.76MB -593 bytes (-0.03%) ⬇️
x-markdown-array-push 245.5kB 138.59kB (129.63%) ⬆️⚠️

Affected Assets, Files, and Routes:

view changes for bundle: antdx-array-push

Assets Changed:

Asset Name Size Change Total Size Change (%)
antdx.min.js -593 bytes 1.76MB -0.03%
view changes for bundle: x-markdown-array-push

Assets Changed:

Asset Name Size Change Total Size Change (%)
x-markdown.js (New) 242.76kB 242.76kB 100.0% 🚀
x-markdown.css (New) 2.74kB 2.74kB 100.0% 🚀
x-markdown.min.js (Deleted) -104.16kB 0 bytes -100.0% 🗑️
x-markdown.min.css (Deleted) -2.75kB 0 bytes -100.0% 🗑️

@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2025

Preview failed

@dosubot dosubot bot added the bug Something isn't working label Dec 8, 2025
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @Div627, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses an issue related to Umi's MFSU checks by modifying how the mermaid charting library is integrated into the project. The core change involves transitioning mermaid from an optional peer dependency to a direct dependency, along with a refactor of its initialization to be static and global. This ensures consistent availability and proper bundling of mermaid, resolving potential build or runtime conflicts, and consequently, the bundle size limit for the main package has been updated.

Highlights

  • Mermaid Dependency Management: The mermaid library has been moved from peerDependencies to dependencies in the packages/x/package.json, ensuring it is always bundled with the application rather than being an optional external dependency.
  • Mermaid Initialization Logic: The Mermaid component now statically imports and globally initializes the mermaid library, removing the previous dynamic import and useRef pattern. This simplifies the component's rendering logic and ensures mermaid is ready when needed.
  • Bundle Size Limit Adjustment: The size-limit for the antdx.min.js bundle in the root package.json has been increased from 500 KiB to 950 KiB to accommodate the direct inclusion of the mermaid library.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 8, 2025

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

📝 Walkthrough

Walkthrough

Mermaid 组件改为顶层导入 mermaid 并在 useEffect 中初始化;包依赖将 mermaid 移入 dependencies;大量新增或扩展测试用例覆盖渲染、交互、导出与边界情况。

Changes

内聚体 / 文件(s) 变更摘要
Mermaid 组件重构
packages/x/components/mermaid/Mermaid.tsx
移除动态导入与 mermaidRef,改为顶层导入 mermaid 并在 useEffect 中初始化(配置保持:startOnLoad:false、securityLevel:'strict'、theme:'default'、fontFamily:'monospace');直接使用 mermaid.parse()/mermaid.render();错误处理与组件签名不变。
依赖关系调整
packages/x/package.json
mermaid 从 dev/peerDependencies 移至 dependencies(新增 mermaid ^11.12.1),并移除相应的 peerDependencies 条目。
测试用例扩展
packages/x/components/mermaid/__tests__/index.test.tsx
新增大量测试,覆盖 transform 样式、缩放/拖拽交互、代码视图切换、复制/下载流程、边界条件、自定义样式、RTL 与回调等场景。

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

  • 关注点:
    • Mermaid.tsx 中 useEffect 的依赖数组与初始化时序,避免竞态与重复初始化
    • 由动态导入改为顶层导入对构建体积与 SSR 的影响
    • package.json 依赖迁移对消费端安装与版本兼容性的影响
    • 新增测试中重复块与钩子/模拟(mock)实现的正确性与稳定性

诗歌

🐰 顶层引入不再等,useEffect 中静静生。
配置如旧心自定,测试繁花竞相鸣。
代码跳跃兔子乐,图表轻舞夜微明。

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PR标题准确地概括了主要变更:将Mermaid从peerDependencies移至dependencies,并重构了组件实现,这与所有文件变更内容相符。
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix_mermaid_mfsu_check

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8b1302c and 3a562b5.

📒 Files selected for processing (1)
  • packages/x/package.json (2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: build preview
  • GitHub Check: size
  • GitHub Check: test
  • GitHub Check: test
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (2)
packages/x/package.json (2)

79-92: 确认 mermaid 版本选择的合理性

根据 AI 总结,mermaid 之前在 devDependencies 中的版本为 ^11.12.2,但现在在 dependencies 中为 ^11.12.1。这看起来是一个版本降级。请确认这是否是有意为之,还是需要调整为 ^11.12.2 以保持一致性。


244-248: peerDependencies 更新正确

mermaid 已正确从 peerDependencies 中移除,保留了 antd、react 和 react-dom 作为同伴依赖。这与 PR 目标一致,允许将 mermaid 作为直接依赖来修复 umi MFSU 检查问题。


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@socket-security
Copy link

socket-security bot commented Dec 8, 2025

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request fixes a build issue with Umi's MFSU by moving mermaid from a peer dependency to a direct, statically-imported dependency. While this resolves the build problem, it introduces a significant performance issue by increasing the main bundle size by approximately 450 KiB. My primary feedback focuses on mitigating this performance regression by suggesting the use of React.lazy to code-split the Mermaid component. I've also included a smaller suggestion to improve the code style by avoiding module-level side effects.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (3)
packages/x/package.json (1)

90-91: Mermaid 从 peer/dev 挪到 dependencies 的影响

把 mermaid 放进 "dependencies" 很符合这次修复的目标(MFSU 能静态分析到它),也能避免使用方忘记安装 peer 时直接报错。不过两点可以确认下:

  1. 作为运行时依赖,mermaid 会被所有使用 @ant-design/x 的应用打进最终 bundle,和刚才在根 package.json 里放宽的 size-limit 是一体的取舍——确认这是你们期望的打包策略;
  2. 这里版本是 ^11.12.1,之前 devDependencies 里是 ^11.12.2,如果上游已经验证过 .2 版本更稳定,可以考虑保持一致,减少潜在的行为差异。
package.json (1)

51-53: size-limit 放宽幅度较大,建议后续关注体积走势

antdx.min.js 的上限直接从 500 KiB 调到 950 KiB,可以理解是为引入 mermaid“买单”。这里建议:

  • 先确认当前真实体积和 margin(比如实测 ~8xx KiB,留一点冗余即可,避免阈值过高失去预警意义);
  • 中长期可以考虑把依赖 mermaid 的部分拆成异步 chunk 或独立入口(例如只在文档/Markdown 场景加载),减轻主包体积压力。
packages/x/components/mermaid/Mermaid.tsx (1)

5-21: 静态引入 + 顶层 mermaid.initialize 的运行环境假设

现在改成:

  • 静态 import mermaid from 'mermaid';
  • 模块加载时立即调用一次 mermaid.initialize(...)
  • renderDiagram 中直接 await mermaid.parse(...) / await mermaid.render(...)

整体上看,这样能让 Umi MFSU 正确识别依赖,逻辑也比之前的 mermaidRef 简化不少。不过有两个点建议你们确认一下:

  1. SSR / Node 环境兼容性
    顶层的 import mermaid + mermaid.initialize 会在模块首次被 import 时就执行。如果 @ant-design/x 被用于 SSR 或 Node 端预渲染,而运行环境没有提供 window/document,取决于 mermaid 自身实现,可能在 import 或 initialize 阶段抛出异常。

    • 如果可以确认该组件只在纯浏览器环境使用,这个前提是可以接受的;
    • 如果存在 SSR 场景,建议至少在 initialize 外围加一层保护,例如:
      if (typeof window !== 'undefined') {
        mermaid.initialize({ ... });
      }
      同时在文档里明确说明 SSR 限制;如果 mermaid 在 import 阶段就依赖 DOM,那可能还需要保留某种形式的动态 import 来彻底规避。
  2. 全局配置与后续扩展性
    现在配置被“锁死”在顶层 initialize 里,后续如果需要:

    • 允许调用方自定义 theme / securityLevel;
    • 或基于不同场景应用不同 mermaid 配置;
      可能需要再抽一个小的 getMermaid()/initMermaidOnce() 工具,集中管理初始化与配置合并,而不是在组件文件里直接全局初始化。

就目前 PR 的目标(修复 MFSU 检查)而言,这个实现是可行的,但建议结合实际运行环境再跑一轮 SSR / 构建链路验证。

Also applies to: 95-100

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4b904f6 and 3e41d56.

📒 Files selected for processing (3)
  • package.json (1 hunks)
  • packages/x/components/mermaid/Mermaid.tsx (3 hunks)
  • packages/x/package.json (2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: build preview
  • GitHub Check: test
  • GitHub Check: size
  • GitHub Check: test
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (1)
packages/x/package.json (1)

244-248: 移除 mermaid peer 依赖的行为变化

现在 peerDependencies 只保留了 antdreactreact-dom,不再强制要求调用方安装 mermaid,这与把 mermaid 视为内部实现细节、由库自己打包是一致的。这样可以减少使用门槛,但也意味着调用方无法通过 peer 的方式显式控制 mermaid 版本。

如果你们后续有开放 mermaid 版本可配置的计划,可能需要再补一层文档或配置入口,目前这个调整本身是合理的。

@codecov
Copy link

codecov bot commented Dec 8, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.76%. Comparing base (1e2fe3f) to head (3a562b5).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1475      +/-   ##
==========================================
+ Coverage   94.66%   94.76%   +0.09%     
==========================================
  Files         137      137              
  Lines        3920     3917       -3     
  Branches     1108     1106       -2     
==========================================
+ Hits         3711     3712       +1     
+ Misses        206      202       -4     
  Partials        3        3              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Dec 8, 2025

Deploying ant-design-x with  Cloudflare Pages  Cloudflare Pages

Latest commit: 3a562b5
Status: ✅  Deploy successful!
Preview URL: https://2edd5db7.ant-design-x.pages.dev
Branch Preview URL: https://fix-mermaid-mfsu-check.ant-design-x.pages.dev

View logs

@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2025

size-limit report 📦

Path Size
packages/x/dist/antdx.min.js 439.69 KB (+233 B 🔺)
packages/x-sdk/dist/x-sdk.min.js 7.37 KB
packages/x-markdown/dist/x-markdown.min.js 28.85 KB
packages/x-markdown/dist/plugins/latex.min.js 61.95 KB

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
packages/x/components/mermaid/index.tsx (1)

1-14: 懒加载封装整体合理,但有几处细节建议优化并需要确认兼容性

整体思路没问题:通过 React.lazy(() => import('./Mermaid')) + Suspense 懒加载 Mermaid 组件,可以规避 MFSU 检查,同时减小首包体积,这点是加分项。

有几处可以注意/优化的点:

  1. 确认 ./Mermaid 的默认导出形式是否满足 React.lazy 要求
    React.lazy 要求被加载模块必须有一个默认导出且该默认导出是一个 React 组件:

    export default Mermaid;

    如果当前 ./Mermaid 只有命名导出,或者默认导出不是组件,运行时会直接抛错。建议在这个 PR 里顺手确认一下 Mermaid.tsx 的导出形式,以及是否在构建后的 bundle 中如预期那样生成 lazy 组件。

  2. React.FC<MermaidProps>MermaidProps 中已有的 children: string 类型有些拧巴
    MermaidProps 里已经声明了 children: string,而 React.FC<P> 会额外加上一个 children?: ReactNode,二者交叉在 TS 类型上会比较绕,且一般不推荐在库代码里使用 React.FC。这里可以考虑一个无行为变更的重构:

    -const MermaidWrapper: React.FC<MermaidProps> = (props) => (
    +const MermaidWrapper = (props: MermaidProps) => (

    这样 MermaidWrapper 的 props 类型就完全以 MermaidProps 为准,更符合当前接口设计。

  3. Suspense fallback 建议与内部 UI 规范/i18n 保持一致
    目前 fallback 是硬编码英文:<div>Loading Mermaid</div>。作为组件库入口,可能会希望:

    • 复用内部的 Loading/Spin 组件,而不是裸 <div>
    • 或者支持通过 props/context 自定义 fallback;
    • 至少考虑走一套可本地化的文案,而非写死英文。
      这不是阻塞问题,但可以在后续迭代中统一一下交互与文案。
  4. 默认导出由 Mermaid 换成 MermaidWrapper 的兼容性
    现在模块默认导出的是 MermaidWrapper(外层 Suspense 包装),大部分调用方只要是 <Mermaid ... /> 使用 JSX 渲染,且不依赖静态属性/ref,应该是无感知的。需要确认两点:

    • 原先的 Mermaid 是否在默认导出上挂载了静态属性(例如 Mermaid.xxx = ... / defaultProps 等);
    • 是否有调用方对默认导出组件使用 ref,并期望拿到内部 DOM/实例。
      当前 MermaidWrapper 既没有 forwardRef,也不会复用/拷贝静态属性,如果存在上述用法,可能是轻微的 breaking change,建议全局搜一下使用方式确认。

综合来看,本次改动方向正确,可以解决依赖 & MFSU 的问题;上面几点都偏类型与兼容性/易用性细节,可视情况在本 PR 或后续 PR 中处理。

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3e41d56 and bda0854.

📒 Files selected for processing (2)
  • packages/x/components/mermaid/Mermaid.tsx (3 hunks)
  • packages/x/components/mermaid/index.tsx (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • packages/x/components/mermaid/Mermaid.tsx
🧰 Additional context used
🧬 Code graph analysis (1)
packages/x/components/mermaid/index.tsx (1)
packages/x/components/mermaid/Mermaid.tsx (1)
  • MermaidProps (18-29)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: build preview
  • GitHub Check: test
  • GitHub Check: size
  • GitHub Check: test
  • GitHub Check: Cloudflare Pages

@Div627 Div627 linked an issue Dec 8, 2025 that may be closed by this pull request
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
packages/x/components/mermaid/__tests__/index.test.tsx (3)

465-484: 测试断言不够充分

测试名称声称验证 "transform styles to SVG element based on scale and position",但实际上只验证了 UI 元素的存在,并没有真正验证 transform 样式是否被应用。建议增加对实际 transform 样式值的断言。

建议增加对 transform 样式的实际验证:

       // 验证缩放和拖动功能存在
       const zoomInButton = screen.getByLabelText('zoom-in');
       const zoomOutButton = screen.getByLabelText('zoom-out');
       const resetButton = screen.getByRole('button', { name: 'Reset' });

       expect(zoomInButton).toBeInTheDocument();
       expect(zoomOutButton).toBeInTheDocument();
       expect(resetButton).toBeInTheDocument();
+
+      // 验证默认 transform 样式
+      const svgWrapper = graphContainer?.querySelector('[style*="transform"]');
+      if (svgWrapper) {
+        expect(svgWrapper).toHaveStyle('transform: translate(0px, 0px) scale(1)');
+      }
     });

486-502: 测试断言过于宽松

这些测试只使用 expect(() => ...).not.toThrow() 来验证操作不会抛出错误,但没有验证操作的实际效果。这种断言方式对于回归测试来说价值有限,因为即使功能完全失效,只要不抛出异常,测试仍会通过。

建议增加对状态变化的验证:

     it('should update transform styles when scale changes', async () => {
       render(<Mermaid>{mermaidContent}</Mermaid>);

       await waitFor(() => {
         expect(mockRender).toHaveBeenCalled();
       });

       const zoomInButton = screen.getByLabelText('zoom-in');
       const zoomOutButton = screen.getByLabelText('zoom-out');

-      // 点击放大按钮应该触发缩放
-      expect(() => fireEvent.click(zoomInButton)).not.toThrow();
-
-      // 点击缩小按钮应该触发缩放
-      expect(() => fireEvent.click(zoomOutButton)).not.toThrow();
+      // 点击放大按钮应该触发缩放
+      fireEvent.click(zoomInButton);
+      // 可以验证组件状态或 UI 反馈,如缩放比例显示等
+
+      // 点击缩小按钮应该触发缩放
+      fireEvent.click(zoomOutButton);
     });

Also applies to: 521-531


548-570: 边界测试缺少实际的边界值验证

测试名称为 "should handle edge cases for transform styles",但只验证了多次点击不抛出异常,没有验证:

  1. 缩放是否有最小/最大限制
  2. 达到边界后按钮是否被禁用或缩放值是否保持不变

建议增加对边界值的实际验证:

     it('should handle edge cases for transform styles', async () => {
       render(<Mermaid>{mermaidContent}</Mermaid>);

       await waitFor(() => {
         expect(mockRender).toHaveBeenCalled();
       });

       const zoomOutButton = screen.getByLabelText('zoom-out');
       const zoomInButton = screen.getByLabelText('zoom-in');

-      // 验证边界值处理
-      expect(() => {
-        // 多次点击缩小按钮测试最小值
-        for (let i = 0; i < 10; i++) {
-          fireEvent.click(zoomOutButton);
-        }
-
-        // 多次点击放大按钮测试最大值
-        for (let i = 0; i < 20; i++) {
-          fireEvent.click(zoomInButton);
-        }
-      }).not.toThrow();
+      // 多次点击缩小按钮测试最小值
+      for (let i = 0; i < 10; i++) {
+        fireEvent.click(zoomOutButton);
+      }
+      // TODO: 验证缩放已达到最小值(如检查按钮禁用状态或缩放值)
+
+      // 多次点击放大按钮测试最大值
+      for (let i = 0; i < 20; i++) {
+        fireEvent.click(zoomInButton);
+      }
+      // TODO: 验证缩放已达到最大值
     });
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bda0854 and 8b1302c.

📒 Files selected for processing (1)
  • packages/x/components/mermaid/__tests__/index.test.tsx (2 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-12-04T03:46:13.221Z
Learnt from: YumoImer
Repo: ant-design/x PR: 293
File: components/x-request/demo/custom-transformer.tsx:75-79
Timestamp: 2024-12-04T03:46:13.221Z
Learning: When reviewing code examples in `components/x-request/demo/custom-transformer.tsx` that use `mockFetch`, it's unnecessary to suggest enhancements to the `TransformStream` implementation, such as adding error handling and data validation, since the code is intended as a simple demonstration.

Applied to files:

  • packages/x/components/mermaid/__tests__/index.test.tsx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: size
  • GitHub Check: test
  • GitHub Check: build preview
  • GitHub Check: test
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (2)
packages/x/components/mermaid/__tests__/index.test.tsx (2)

533-546: 代码视图测试逻辑正确

此测试正确验证了切换到代码视图后,语法高亮组件会被渲染,符合预期行为。


504-519: Test correctly matches the implemented event handling approach

The test appropriately fires mouseDown, mouseMove, and mouseUp on the container element, which aligns with the actual implementation. The Mermaid component attaches these event handlers directly to the .ant-mermaid-graph container (lines 307-310 in Mermaid.tsx) rather than using document-level listeners. The test accurately simulates the current behavior.

However, consider whether the test should also verify that the position state actually changes during drag. Currently it only checks that events don't throw errors.

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Dec 9, 2025
@socket-security
Copy link

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Protestware or unwanted behavior: npm es5-ext

Note: This package prints a protestware console message on install regarding Ukraine for users with Russian language locale

From: ?npm/[email protected]

ℹ Read more on: This package | This alert | What is protestware?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at [email protected].

Suggestion: Consider that consuming this package may come along with functionality unrelated to its primary purpose.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/[email protected]. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
Protestware or unwanted behavior: npm es5-ext

Note: The script attempts to run a local post-install script, which could potentially contain malicious code. The error handling suggests that it is designed to fail silently, which is a common tactic in malicious scripts.

From: ?npm/[email protected]

ℹ Read more on: This package | This alert | What is protestware?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at [email protected].

Suggestion: Consider that consuming this package may come along with functionality unrelated to its primary purpose.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/[email protected]. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@kimteayon kimteayon merged commit efc8fdd into main Dec 9, 2025
15 checks passed
@kimteayon kimteayon deleted the fix_mermaid_mfsu_check branch December 9, 2025 10:55
kimteayon added a commit that referenced this pull request Dec 30, 2025
* ci(pr): add pr-contributor-welcome workflow

* chore: merge

* fix: setMessages did not refresh component (#1450)

* fix: setMessages did not refresh component

* fix: setMessages did not refresh component

* fix: revert test code

* fix: lint error

* fix: set error

* refactor: use symbol

---------

Co-authored-by: Mickey <[email protected]>

* chore: merge

* fix(XMarkdown): replace useStreaming regex to avoid compatibility issues (#1457)

* fix: fix ios 16.3 compatibility

* fix: fix cr

* chore: merge feature to main (#1458)

* chore: feature merge main (#1369)

* feat: theme

* docs: add custom components

* feat: theme

* feat: theme

* feat: add theme

* feat: antd

* fix: fix test case

* feat(XMarkdown): Support openLinksInNewTab (#1164)

* feat: add openLinksInNewTab & docs change & xss

* fix: fix CR

* fix: fix CR

* fix: fix CR

* feat: xmarkdown default less

* feat: default less

* feat: theme

* docs: add custom components

* feat: theme

* feat: theme

* feat: add theme

* feat: antd

* fix: fix test case

* test: less

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* feat(use-x-chat): add updating status (#833)

* feat(use-x-chat): add updating status

* test(use-x-chat): fix test error about on-update callback

* docs(use-x-chat): add loading for stream demo

* fix(use-x-chat): always set loadingMsg when init

* fix(use-x-chat): set placeholderMsg default value to empty string

* test(use-x-chat): fix check filed for case about loading placeholder msg

---------

Co-authored-by: Mickey <[email protected]>

* fix(ThoughtChain): fix the issue where title block-level elements cannot be displayed when collapsible is enabled (#1172)

* fix(thought-chain): 修改title的结构

* fix(thought-chain): 修改title部分结构,满足传递ReactNode

* chore: update snapShot

* update docs case

* update docs case

* update checkTextOverflow

* chore: update snapShot

* fix: replace span with div and update snapShot

* chore: changelog of 1.6.1 (#1173)

* chore: changelog of 1.6.1

* chore: changelog of 1.6.1

* chore: changelog of 1.6.1

* chore: net merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* chore: next merge main

* fix: fix Mermaid render

* feat: remove console

* fix: fix build error

* docs: remove performance docs

* fix: fix test error

* chore: changelog of 2.0.0-alpha.7 & fixed Semantic of Xmardown (#1178)

* chore: changelog of 2.0.0-alpha.7

* chore: update

* docs: 更新antdx文档

* docs: 更新changelog文档位置

* docs: 更新changelog文档位置

* feat: site

* feat: markdown Semantic

* chore: version

* chore: changelog of alpha7

* fix: markdown

* fix: lint

* fix: lint

* fix:dekkp

* fix:dekkp

* fix: update snapshot

* docs: remove numbers in footnote

* fix: markdown  theme & Unified Type Naming (#1182)

* feat: css

* feat: ts

* feat: ts

* docs: repair the type error in the useXChat document (#1183)

* feat: container

* docs: 移除非必要的 return

* chore: update playground (#1184)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* chore: update site config (#1186)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* chore: update site config

* chore: markdown

* chore: markdown

* feat: update antd version

* feat: 依赖调整

* chore: bump ora from 8.2.0 to 9.0.0 (#1189)

Bumps [ora](https://github.com/sindresorhus/ora) from 8.2.0 to 9.0.0.
- [Release notes](https://github.com/sindresorhus/ora/releases)
- [Commits](https://github.com/sindresorhus/ora/compare/v8.2.0...v9.0.0)

---
updated-dependencies:
- dependency-name: ora
  dependency-version: 9.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump jsdom from 26.1.0 to 27.0.0 (#1180)

Bumps [jsdom](https://github.com/jsdom/jsdom) from 26.1.0 to 27.0.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/26.1.0...27.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-version: 27.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add comprehensive FAQ questions with Chinese and English versions covering markdown, Vue, think tags, and mobile adaptation (#1117)

* Initial plan

* Add FAQ questions about markdown, Vue, think tags, and mobile adaptation

Co-authored-by: afc163 <[email protected]>

* Update FAQ with 2.0 info and add English translations

Co-authored-by: afc163 <[email protected]>

* Add PR link to Think component announcement in FAQ

Co-authored-by: afc163 <[email protected]>

---------

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: afc163 <[email protected]>

* docs & type: fix lint error

* chore: update tbox website (#1191)

* chore: update tbox website

* chore: update tbox website

* chore: update tbox website next (#1192)

* chore: update tbox website next

* chore: update tbox website next

* chore: update tbox website

* feat: revert version

* chore: update og:image (#1193)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* chore: update site config

* chore: markdown

* chore: markdown

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* feat: scroll

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* fix: update playground & fix Actions Semantic &  update OpenAI model (#1194)

* feat: bubble info

* feat: scroll

* feat: scroll

* feat: ahooks

* feat: ahooks

* feat: ahooks

* chore: 更新open ai模型

* chore: update

* chore: update

* chore: update

* Feat(XMarkdown): 类型调整 & 文档补充 & 依赖 antd (#1187)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* Feature(XMarkdown):动画调整 & 导出类型修改 (#1198)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: component docs

* Docs(XMarkdown): Component Docs (#1199)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* docs: component docs

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* chore(ci): use setup-utoo (#1197)

* chore: setup utoo

* chore: remove @ant-design/x-markdown dev deps

* chore: default value

* fix: antd deps

---------

Co-authored-by: Mickey <[email protected]>

* chore: bump tbox-nodejs-sdk from 0.0.14 to 0.0.17 (#1190)

Bumps [tbox-nodejs-sdk](https://github.com/tbox/tbox-nodejs-sdk) from 0.0.14 to 0.0.17.
- [Commits](https://github.com/tbox/tbox-nodejs-sdk/commits)

---
updated-dependencies:
- dependency-name: tbox-nodejs-sdk
  dependency-version: 0.0.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: add Bubble extra & update playground & useXChat setMessage can use fun (#1195)

* feat: appid

* feat: bubble extra data

* feat: bubble extra data

* feat: bubble extra data

* fix: css

* feat: bubble

* feat: bubble

* feat: x-sdk

* feat: x-sdk useXChat

* feat: x-sdk useXChat

* feat: test

* feat: test

* feat: test

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: modify animation

* docs: format

* feat: change startWith to indexOf

* fix: fix test case

* docs: 更换图标 (#1205)

* fix: fix lint error

* docs: change docs

* feat: change style

* Feature(XMarkdown):Animation (#1204)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* docs: component docs

* feat: modify animation

* docs: format

* feat: change startWith to indexOf

* fix: fix test case

* fix: fix lint error

* docs: change docs

* feat: change style

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* chore: bump tbox-nodejs-sdk from 0.0.17 to 0.0.18 (#1206)

Bumps [tbox-nodejs-sdk](https://github.com/tbox/tbox-nodejs-sdk) from 0.0.17 to 0.0.18.
- [Commits](https://github.com/tbox/tbox-nodejs-sdk/commits)

---
updated-dependencies:
- dependency-name: tbox-nodejs-sdk
  dependency-version: 0.0.18
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump actions/github-script from 7 to 8 (#1159)

Bumps [actions/github-script](https://github.com/actions/github-script) from 7 to 8.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: Update README (#1208)

* docs: Update README

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

---------

Signed-off-by: afc163 <[email protected]>

* docs: add packages badges (#1209)

* docs: add packages badges

Signed-off-by: afc163 <[email protected]>

* Fix formatting in README.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update npm version badge to alpha version

Signed-off-by: afc163 <[email protected]>

* Update README to include GitHub contributors badge

Signed-off-by: afc163 <[email protected]>

---------

Signed-off-by: afc163 <[email protected]>

* feat: 支持遍历children

* fix: fix cr

* feat: animation support div and remove table style

* feat: changelog

* docs: revert changelog

* chore: changelog of 2.0.0-alpha.9 (#1214)

* docs: alpha9 changelog

* chore: update version

* chore: changelog

* chore: merge next-alpha to next  (#1210)

* docs: 更换图标

* docs: 更换图标

* docs: 删除多余句号

* 透传CascaderProps其他参数 (#1110)

* feat: 透传CascaderProps其他参数

* feat: onOpenChange和onDropdownVisibleChange也排除

* fix: 重复的全部排除

* fix: 调整顺序

---------

Co-authored-by: 彭星 <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: 中英文空格

* chore: x-markdown path modify

* chore: editbutton url

* fix(docs): fixed the incorrect Semantic DOM component names in the think component (#1218)

* docs: update the XProvider theme demo (#1216)

* docs: 更新主题demo

* fix: think

* fix: think

* chore: change x-sdk path

* docs: fix docs cr

* feat: Sender focus add slot (#1221)

* feat: Sender focus add slot

* feat: Sender focus add slot

* feat: Sender focus add slot

* feat: Sender focus add slot

* test: snapshots

* test: snapshots

* test: sender

* feat: Semantic type of Attachments and FileCard  (#1220)

* feat: update components semantic

* feat: update components semantic

* test: sender

* test: sender

* docs: seeConf

* docs: seeConf

* docs: SeeConf link (#1224)

* docs: seeConf

* docs: seeConf

* chore: bump peter-evans/commit-comment from 3 to 4 (#1230)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump @types/jsdom from 21.1.7 to 27.0.0 (#1229)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump father from 4.6.3 to 4.6.5 (#1181)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: afc163 <[email protected]>

* chore: bump @happy-dom/jest-environment from 18.0.1 to 19.0.2 (#1228)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump happy-dom from 18.0.1 to 19.0.2 (#1227)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: update site home page (#1233)

* feat: site home lottie

* feat: site home lottie

* test: snap

* test: snap

* chore: lazy site compontents

* fix: site home

* feat: image and json

* feat: image and json

* docs: fix the component names in semanticDom (#1232)

* chore: bump @happy-dom/jest-environment from 19.0.2 to 20.0.0 (#1236)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump happy-dom from 19.0.2 to 20.0.0 (#1237)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: Optimize sender input parameters: onPasteFile (#1242)

* fix: update onPasteFile

* feat: update

* fix: Fix document references to internationalization &  Add internationalization to SVG (#1243)

* fix: fix the local config

* fix: fix the local config

* chore: ignore scripts (#1247)

* fix: antd-token-previewer updated (#1246)

* feat(FileCaed): support jfif format (#1248)

* fix: x-sdk requestFallback error (#1244)

* fix: x-sdk requestFallback error

* fix: x-sdk requestFallback error

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

* feat: update isStreaming

* feat: Bubble.System & Bubble.Divider (#1239)

* feat: Bubble.System & Bubble.Divider

* docs: Bubble

* feat: Bubble.List support Bubble.System and Bubble.Divider

* fix: lint

* fix: test

* test: snapshot

* fix(Bubble): semantic of Bubble

* fix: lint

* feat: bubble

* feat: agent

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

---------

Co-authored-by: Mickey <[email protected]>

* feat: add sources component (#1250)

* feat: add sources component

* fix: lint fix

* fix: lint fix

* fix: add display

* fix: update test

* fix: test fix

* fix: test fix

* fix: add test

* fix: update doc cover

* fix: update test

---------

Co-authored-by: jiyang.hy <[email protected]>
Co-authored-by: Mickey <[email protected]>

* feat: add  and update SDK demos & add  useXConversations activeConversationKey (#1252)

* docs: x-sdk

* docs: x-sdk

* docs: x-sdk

* fix: md eror

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* docs: 更新文档

* fix(XMarkdown): openLinksInNewTab 属性配置失效 (#1253)

* fxi: fix openLinksInNewTab is filtered by dompurify

* fix: fix ci

---------

Co-authored-by: Mickey <[email protected]>

* fix: onRequest messages& isResqesting & requestPlaceholder & requestFallback  (#1254)

* docs: x-sdk

* docs: x-sdk

* docs: x-sdk

* fix: md eror

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* docs: 更新文档

* fix: 修复onrequest 数据处理

* test: 修改测试用例

* feat: add

* feat(XMarkdown): 支持通过组件匹配未完成的Markdown语法 (#1223)

* feat: support map incomplete image and link to components

* chore: change x-markdown docs

* feat: 移除对 emphasis 语法的缓存,避免误识别导致的异常

* fix: fix lint error

* feat: modify useStreaming cache

* feat: modify useStreaming cache

* feat: modify streamging way

* feat: 基础功能完成

* fix: test cases and demo

* feat: beatify code

* docs: modify docs

---------

Co-authored-by: Mickey <[email protected]>

* fix(XMarkdown): 动画重复渲染 (#1255)

* docs: docs change

* fix: 移除支持动画标签,避免闪动

* fix: fix animation flash and remove useanimation

* feat: support config animation

* feat: beatify code and modify test case

* feat(XMarkdown): latex support (#1256)

* feat: inline katex support 19761\n..\n19761 formart

* feat: support inline \[ \] math

* chore: docs and test case

* fix(XMarkdown):格式缓存 (#1257)

* fix: fix list inner empahsis

* fix: fix regex

* feat: Sender supports SlotConfig changes & Sender supports the function of inserting and replacing characters (#1259)

* docs: 更换图标

* docs: 更换图标

* docs: 删除多余句号

* chore: chengelog of 2.0.0-alpha.10

* feat: date

* feat: dumi

* feat: dumi

* feat: sender

* feat: sender

* feat: sender

* test: lint

* test: lint

* fix: tbox

* test: snapshots

* test: snapshots

* test:slot  test

* test:slot  test

* test:slot  test

* test: snapshots

* test:slot

* test:slot

* test:slot

* test:slot

* test:slot

* test:slot

* fix: skip render animation text when parent is custom component (#1260)

* feat: The source reference component implements the current data functionality (#1261)

* feat: 来源引用组件

* feat: 来源引用组件

* feat: 来源引用组件

* feat: CustomParagraph

* feat: CustomParagraph

* feat: CustomParagraph

* feat: CustomParagraph

* docs: 新增 markdown 文档示例 (#1262)

* docs: 新增docs

* docs: 新增docs

* feat: Bubble list scroll (#1263)

* feat: lit scroll

* docs: update text

* bubble.list

* feat: bubble.lost

* feat: bubble.list

* feat: bubble.list

* feat: bubble.lost

* feat: bubble.lost

* feat: bubble.lost

* feat(XMarkdown): default KaTeX to silent error mode (#1265)

* feat: set latex default throwOnError is false and aviod redos

* feat: set default inline displayMode true and overrride css

* fix: fix cr

* fix: fix cr

* chore: chengelog of 2.0.0-alpha.11 (#1264)

* feat: bubble.lost

* feat: css

* docs:更新change log

* feat: Attachments add ref fun: select to select files & fix maxcount error (#1266)

* feat: attachments

* feat: attachments

* chore: lint

* feat: attachments

* chore: test

* docs: fix used Bubble.List demo error (#1269)

* docs: site update

* docs: site update

* chore: lint

* chore: lint

* chore: test

* docs: Chinese Link Processing (#1270)

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* fix: fix key repeat (#1273)

Co-authored-by: jinyang <[email protected]>

* feat(XMarkdown): add block and streamstatus to code component (#1272)

* feat: code token support block and streamStatus

* fix: fix lint

* fix: fix cr

* docs: api desc

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: Organize and optimize documents of chat provider (#1274)

* docs: site update

* docs: site update

* chore: lint

* chore: lint

* chore: test

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* chore: changelog of 2.0.0-alpha.12 (#1275)

* feat: bubble.lost

* feat: css

* docs:更新change log

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.12

* fix: fix user code paragraph link renderer not work (#1276)

Co-authored-by: jinyang <[email protected]>

* feat: ThoughtChain & Think add blink  (#1278)

* feat: add

* fix: css

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: add blink to ThoughtChain (#1286)

* feat: add

* fix: css

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: thoughtchain 闪动

* feat: thoughtchain 闪动

* feat: 更新文档

* feat: Actions fade in (#1288)

* feat: Actions fade in

* feat: Actions fade in

* feat: Actions fade in

* feat: 更新文档

* feat:  delete Bubble.List suffix (#1285)

* feat: blink

* feat: test

* feat: 更新文档

* feat: 更新文档

* feat: update

* feat: 更新测试用例

* docs: the style with ComponentChangelog in the site (#1290)

* feat: 修复更新日志样式问题

* fix: code reivew comment

---------

Co-authored-by: Mickey <[email protected]>

* feat: Actions motions &  prompts motions (#1289)

* feat: Actions fade in

* feat: Actions fade in

* feat: Actions fade in

* feat: 更新文档

* feat: action motion

* feat: 更新测试用例

* feat: 更新测试用例

* feat: 更新测试用例

* feat: 更新测试用例

* chore: changelog of 2.0.0-alpha.13 (#1292)

* feat: bubble.lost

* feat: css

* docs:更新change log

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* fix: fix dompurifyConfig ALLOWED_TAGS wrong merge to ADD_TAGS

* fix: fix fenced code streamStatus set wrong

* fix: fix ci

* feat: peer dependece antd

* chore: overrides antd

* chore: overrides

* chore: antd

* fix: fix ci

* chore: antd version

* chore: antd

* chore: update antd 6.00-alpha.4 (#1300)

* feat: link docs

* feat: link docs

* feat: link docs

* feat: link docs

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* feat: link docs

* chore: update antdv6

* chore: revert antd 6.0.0alpha.4 type change

* refactor(types): rename SteamingOption to StreamingOption and modify docs

* docs: api description

* docs: document update error (#1303)

* feat: markdown theme (#1305)

* chore: 整理文件

* chore: 整理文件

* chore: css

* feat: link docs

* feat: link

* feat: link

* fix: fix set code streamStastus wrong when code after \n\n (#1307)

Co-authored-by: jinyang <[email protected]>

* style(XMarkdown): migrate component styles from Less to CSS (#1306)

* style: covert .less to .css

* fix: fix style

* fix: fix css build error

---------

Co-authored-by: jinyang <[email protected]>

* feat: token of blinkMotion (#1318)

* feat: token of blinkMotion

* test: lint

* feat: lint

* chore: changelog of 2.0.0-alpha.15 (#1310)

* chore: version

* feat: update markdown

* feat: update

* feat: push

* chore:changelog of 2.0.0-alpha.15

* chore:changelog of 2.0.0-alpha.15

* feat: FileCard image load  (#1311)

* feat: card file image loading

* feat: card file image loading

* feat: card file image loading

* feat: token of blinkMotion

* feat: card file image loading

* test: file-card

* feat: lint

* feat(XMarkdown): cache incomplete table & HTML tokens in useStreaming (#1322)

* feat: useStreaming support cache table and support incomplete-html

* docs: format docs config

* docs: streaming syntax docs

* fix: fix code review

* feat: stream incomplete regex avoid redos attack

* feat: change function type

---------

Co-authored-by: Mickey <[email protected]>

* fix(XMarkdown): deafult table style (#1324)

* fix: table can scroll when content width over width

* fix: fix cr

* feat(XMarkdown): 全类型缓存映射 & 透传缓存原文本 & 文档优化 (#1325)

* feat: pass cache raw data to incomplete-token and map all cache token to incomplete-token

* feat: modify testcase

---------

Co-authored-by: Mickey <[email protected]>

* chore(XMarkdown): modify theme style and format docs (#1326)

* docs: modify docs style

* chore: modify demo and css

* feat(XMarkdown): pass true when disabled and checked props exist (#1328)

* feat: pass true when checkbox disabled and checked exist

* fix: fix test

* chore: Added notification capability and configured WearFox notifications (#1329)

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: test

* feat: test

* feat: remove unnessary heading cache and modify demo

* docs: format docs

* chore: test case

* docs: modify custom plugin docs

* docs: format html skeleton width

* docs: update Doc model from siliconcloud to bigmodel (#1335)

* docs: update docs

* feat: updatemodel

* feat: updatemodel

* perf(XMarkdown): use useMemo to optimize docs render & reduce useless calc (#1337)

* feat: performance and docs

* docs: basic demo

* fix: fix ci

* refactoring: bubble delete components props & internal props enhancement  (#1338)

* refactor: delete components props & internal props enhancement

* feat: updatemodel

* test: snapshots update

* feat: 1

* feat: docs

* docs: Change demo image URL in README (#1340)

* chore: next merge  next-alpha (#1339)

* chore: version

* feat: update markdown

* feat: update

* feat: push

* chore:changelog of 2.0.0-alpha.15

* chore:changelog of 2.0.0-alpha.15

* docs: xmarkdown theme

* chore: changelog of 2.0.0-alpha.16

* chore: changelog of 2.0.0-alpha.16

* feat: updatemodel

* feat: updatemodel

* feat: updatemodel

* feat: updatemodel

* docs: update docs

* docs: update docs

* docs: update docs

* fix: pathname

* feat: updatemodel

* feat: docs

* feat: docs

* fix: fix lint

* docs: update

* docs: update demo (#1341)

* feat: 1

* feat: docs

* docs: update

* docs: update demo

* docs: update demo

* feat: Replace the operation icons of HighlightCode and Mermaid in XMarkdown (#1344)

* chore: remove unused devDependencies (#1350)

* chore: Update workflow to use test-utoo.yml (#1351)

Signed-off-by: afc163 <[email protected]>

* docs: update demo

* chore: bump actions/checkout from 5 to 6 (#1353)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump webpack-bundle-analyzer from 4.10.2 to 5.0.0 (#1333)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump happy-dom (#1354)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: changelog of 2.0.0 (#1355)

* chore: changelog 2.0.0

* chore: changelog 2.0.0

* chore: fix wrong of merge (#1359)

* feat: site

* feat: site

* feat: site

* chore: fix site home (#1361)

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* docs: update badges in README.md (#1360)

* chore: fix main site (#1362)

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* chore: update site-deploy (#1363)

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

* feat: site

---------

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: afc163 <[email protected]>
Co-authored-by: jinyang <[email protected]>
Co-authored-by: Div627 <[email protected]>
Co-authored-by: wzc520pyfm <[email protected]>
Co-authored-by: doki- <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Div627 <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: iamkun-2 <[email protected]>
Co-authored-by: elrrrrrrr <[email protected]>
Co-authored-by: anxLiang <[email protected]>
Co-authored-by: guxingke201 <[email protected]>
Co-authored-by: 彭星 <[email protected]>
Co-authored-by: HongYang <[email protected]>
Co-authored-by: jiyang.hy <[email protected]>
Co-authored-by: Rain120 <[email protected]>
Co-authored-by: BuHao <[email protected]>

* feat: Sender word slot mode adds content editing and skill selection capabilities (#1377)

* chore: changelog of 2.0.0-alpha.7 & fixed Semantic of Xmardown (#1178)

* chore: changelog of 2.0.0-alpha.7

* chore: update

* docs: 更新antdx文档

* docs: 更新changelog文档位置

* docs: 更新changelog文档位置

* feat: site

* feat: markdown Semantic

* chore: version

* chore: changelog of alpha7

* fix: markdown

* fix: lint

* fix: lint

* fix:dekkp

* fix:dekkp

* fix: update snapshot

* docs: remove numbers in footnote

* fix: markdown  theme & Unified Type Naming (#1182)

* feat: css

* feat: ts

* feat: ts

* docs: repair the type error in the useXChat document (#1183)

* feat: container

* docs: 移除非必要的 return

* chore: update playground (#1184)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* chore: update site config (#1186)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* chore: update site config

* chore: markdown

* chore: markdown

* feat: update antd version

* feat: 依赖调整

* chore: bump ora from 8.2.0 to 9.0.0 (#1189)

Bumps [ora](https://github.com/sindresorhus/ora) from 8.2.0 to 9.0.0.
- [Release notes](https://github.com/sindresorhus/ora/releases)
- [Commits](https://github.com/sindresorhus/ora/compare/v8.2.0...v9.0.0)

---
updated-dependencies:
- dependency-name: ora
  dependency-version: 9.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump jsdom from 26.1.0 to 27.0.0 (#1180)

Bumps [jsdom](https://github.com/jsdom/jsdom) from 26.1.0 to 27.0.0.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/26.1.0...27.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-version: 27.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add comprehensive FAQ questions with Chinese and English versions covering markdown, Vue, think tags, and mobile adaptation (#1117)

* Initial plan

* Add FAQ questions about markdown, Vue, think tags, and mobile adaptation

Co-authored-by: afc163 <[email protected]>

* Update FAQ with 2.0 info and add English translations

Co-authored-by: afc163 <[email protected]>

* Add PR link to Think component announcement in FAQ

Co-authored-by: afc163 <[email protected]>

---------

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: afc163 <[email protected]>

* docs & type: fix lint error

* chore: update tbox website (#1191)

* chore: update tbox website

* chore: update tbox website

* chore: update tbox website next (#1192)

* chore: update tbox website next

* chore: update tbox website next

* chore: update tbox website

* feat: revert version

* chore: update og:image (#1193)

* feat: css

* feat: ts

* feat: ts

* chore: toolIdList

* chore: playground

* chore: update site config

* chore: markdown

* chore: markdown

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* chore: 删除title

* feat: scroll

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* fix: update playground & fix Actions Semantic &  update OpenAI model (#1194)

* feat: bubble info

* feat: scroll

* feat: scroll

* feat: ahooks

* feat: ahooks

* feat: ahooks

* chore: 更新open ai模型

* chore: update

* chore: update

* chore: update

* Feat(XMarkdown): 类型调整 & 文档补充 & 依赖 antd (#1187)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* Feature(XMarkdown):动画调整 & 导出类型修改 (#1198)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: component docs

* Docs(XMarkdown): Component Docs (#1199)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* docs: component docs

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* chore(ci): use setup-utoo (#1197)

* chore: setup utoo

* chore: remove @ant-design/x-markdown dev deps

* chore: default value

* fix: antd deps

---------

Co-authored-by: Mickey <[email protected]>

* chore: bump tbox-nodejs-sdk from 0.0.14 to 0.0.17 (#1190)

Bumps [tbox-nodejs-sdk](https://github.com/tbox/tbox-nodejs-sdk) from 0.0.14 to 0.0.17.
- [Commits](https://github.com/tbox/tbox-nodejs-sdk/commits)

---
updated-dependencies:
- dependency-name: tbox-nodejs-sdk
  dependency-version: 0.0.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: add Bubble extra & update playground & useXChat setMessage can use fun (#1195)

* feat: appid

* feat: bubble extra data

* feat: bubble extra data

* feat: bubble extra data

* fix: css

* feat: bubble

* feat: bubble

* feat: x-sdk

* feat: x-sdk useXChat

* feat: x-sdk useXChat

* feat: test

* feat: test

* feat: test

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: playground

* feat: modify animation

* docs: format

* feat: change startWith to indexOf

* fix: fix test case

* docs: 更换图标 (#1205)

* fix: fix lint error

* docs: change docs

* feat: change style

* Feature(XMarkdown):Animation (#1204)

* feat: plugins type modify

* docs: 依赖 antd & docs

* fix: fix lint error

* feat: update antd version

* feat: 依赖调整

* docs & type: fix lint error

* feat: revert version

* feat: modify dompurify config and user config

* feat: update antd version

* feat: all update antd alpha3

* feat: animation 调整 & 类型修改

* fix: fix ts lint

* feat: remove html tags

* fix: fix lint error

* type: modify type

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix lint error

* fix: fix CR

* docs: change

* docs: component docs

* feat: modify animation

* docs: format

* feat: change startWith to indexOf

* fix: fix test case

* fix: fix lint error

* docs: change docs

* feat: change style

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* chore: bump tbox-nodejs-sdk from 0.0.17 to 0.0.18 (#1206)

Bumps [tbox-nodejs-sdk](https://github.com/tbox/tbox-nodejs-sdk) from 0.0.17 to 0.0.18.
- [Commits](https://github.com/tbox/tbox-nodejs-sdk/commits)

---
updated-dependencies:
- dependency-name: tbox-nodejs-sdk
  dependency-version: 0.0.18
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump actions/github-script from 7 to 8 (#1159)

Bumps [actions/github-script](https://github.com/actions/github-script) from 7 to 8.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: Update README (#1208)

* docs: Update README

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

---------

Signed-off-by: afc163 <[email protected]>

* docs: add packages badges (#1209)

* docs: add packages badges

Signed-off-by: afc163 <[email protected]>

* Fix formatting in README.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update README-zh_CN.md

Signed-off-by: afc163 <[email protected]>

* Update npm version badge to alpha version

Signed-off-by: afc163 <[email protected]>

* Update README to include GitHub contributors badge

Signed-off-by: afc163 <[email protected]>

---------

Signed-off-by: afc163 <[email protected]>

* feat: 支持遍历children

* fix: fix cr

* feat: animation support div and remove table style

* feat: changelog

* docs: revert changelog

* chore: changelog of 2.0.0-alpha.9 (#1214)

* docs: alpha9 changelog

* chore: update version

* chore: changelog

* chore: merge next-alpha to next  (#1210)

* docs: 更换图标

* docs: 更换图标

* docs: 删除多余句号

* 透传CascaderProps其他参数 (#1110)

* feat: 透传CascaderProps其他参数

* feat: onOpenChange和onDropdownVisibleChange也排除

* fix: 重复的全部排除

* fix: 调整顺序

---------

Co-authored-by: 彭星 <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: 中英文空格

* chore: x-markdown path modify

* chore: editbutton url

* fix(docs): fixed the incorrect Semantic DOM component names in the think component (#1218)

* docs: update the XProvider theme demo (#1216)

* docs: 更新主题demo

* fix: think

* fix: think

* chore: change x-sdk path

* docs: fix docs cr

* feat: Sender focus add slot (#1221)

* feat: Sender focus add slot

* feat: Sender focus add slot

* feat: Sender focus add slot

* feat: Sender focus add slot

* test: snapshots

* test: snapshots

* test: sender

* feat: Semantic type of Attachments and FileCard  (#1220)

* feat: update components semantic

* feat: update components semantic

* test: sender

* test: sender

* docs: seeConf

* docs: seeConf

* docs: SeeConf link (#1224)

* docs: seeConf

* docs: seeConf

* chore: bump peter-evans/commit-comment from 3 to 4 (#1230)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump @types/jsdom from 21.1.7 to 27.0.0 (#1229)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump father from 4.6.3 to 4.6.5 (#1181)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: afc163 <[email protected]>

* chore: bump @happy-dom/jest-environment from 18.0.1 to 19.0.2 (#1228)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump happy-dom from 18.0.1 to 19.0.2 (#1227)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: update site home page (#1233)

* feat: site home lottie

* feat: site home lottie

* test: snap

* test: snap

* chore: lazy site compontents

* fix: site home

* feat: image and json

* feat: image and json

* docs: fix the component names in semanticDom (#1232)

* chore: bump @happy-dom/jest-environment from 19.0.2 to 20.0.0 (#1236)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump happy-dom from 19.0.2 to 20.0.0 (#1237)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: Optimize sender input parameters: onPasteFile (#1242)

* fix: update onPasteFile

* feat: update

* fix: Fix document references to internationalization &  Add internationalization to SVG (#1243)

* fix: fix the local config

* fix: fix the local config

* chore: ignore scripts (#1247)

* fix: antd-token-previewer updated (#1246)

* feat(FileCaed): support jfif format (#1248)

* fix: x-sdk requestFallback error (#1244)

* fix: x-sdk requestFallback error

* fix: x-sdk requestFallback error

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

* feat: update isStreaming

* feat: Bubble.System & Bubble.Divider (#1239)

* feat: Bubble.System & Bubble.Divider

* docs: Bubble

* feat: Bubble.List support Bubble.System and Bubble.Divider

* fix: lint

* fix: test

* test: snapshot

* fix(Bubble): semantic of Bubble

* fix: lint

* feat: bubble

* feat: agent

* test: 新增测试用例

* test: 新增测试用例

* test: 新增测试用例

---------

Co-authored-by: Mickey <[email protected]>

* feat: add sources component (#1250)

* feat: add sources component

* fix: lint fix

* fix: lint fix

* fix: add display

* fix: update test

* fix: test fix

* fix: test fix

* fix: add test

* fix: update doc cover

* fix: update test

---------

Co-authored-by: jiyang.hy <[email protected]>
Co-authored-by: Mickey <[email protected]>

* feat: add  and update SDK demos & add  useXConversations activeConversationKey (#1252)

* docs: x-sdk

* docs: x-sdk

* docs: x-sdk

* fix: md eror

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* docs: 更新文档

* fix(XMarkdown): openLinksInNewTab 属性配置失效 (#1253)

* fxi: fix openLinksInNewTab is filtered by dompurify

* fix: fix ci

---------

Co-authored-by: Mickey <[email protected]>

* fix: onRequest messages& isResqesting & requestPlaceholder & requestFallback  (#1254)

* docs: x-sdk

* docs: x-sdk

* docs: x-sdk

* fix: md eror

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* feat: activeConversationKey

* docs: 更新文档

* fix: 修复onrequest 数据处理

* test: 修改测试用例

* feat: add

* feat(XMarkdown): 支持通过组件匹配未完成的Markdown语法 (#1223)

* feat: support map incomplete image and link to components

* chore: change x-markdown docs

* feat: 移除对 emphasis 语法的缓存,避免误识别导致的异常

* fix: fix lint error

* feat: modify useStreaming cache

* feat: modify useStreaming cache

* feat: modify streamging way

* feat: 基础功能完成

* fix: test cases and demo

* feat: beatify code

* docs: modify docs

---------

Co-authored-by: Mickey <[email protected]>

* fix(XMarkdown): 动画重复渲染 (#1255)

* docs: docs change

* fix: 移除支持动画标签,避免闪动

* fix: fix animation flash and remove useanimation

* feat: support config animation

* feat: beatify code and modify test case

* feat(XMarkdown): latex support (#1256)

* feat: inline katex support 19761\n..\n19761 formart

* feat: support inline \[ \] math

* chore: docs and test case

* fix(XMarkdown):格式缓存 (#1257)

* fix: fix list inner empahsis

* fix: fix regex

* feat: Sender supports SlotConfig changes & Sender supports the function of inserting and replacing characters (#1259)

* docs: 更换图标

* docs: 更换图标

* docs: 删除多余句号

* chore: chengelog of 2.0.0-alpha.10

* feat: date

* feat: dumi

* feat: dumi

* feat: sender

* feat: sender

* feat: sender

* test: lint

* test: lint

* fix: tbox

* test: snapshots

* test: snapshots

* test:slot  test

* test:slot  test

* test:slot  test

* test: snapshots

* test:slot

* test:slot

* test:slot

* test:slot

* test:slot

* test:slot

* fix: skip render animation text when parent is custom component (#1260)

* feat: The source reference component implements the current data functionality (#1261)

* feat: 来源引用组件

* feat: 来源引用组件

* feat: 来源引用组件

* feat: CustomParagraph

* feat: CustomParagraph

* feat: CustomParagraph

* feat: CustomParagraph

* docs: 新增 markdown 文档示例 (#1262)

* docs: 新增docs

* docs: 新增docs

* feat: Bubble list scroll (#1263)

* feat: lit scroll

* docs: update text

* bubble.list

* feat: bubble.lost

* feat: bubble.list

* feat: bubble.list

* feat: bubble.lost

* feat: bubble.lost

* feat: bubble.lost

* feat(XMarkdown): default KaTeX to silent error mode (#1265)

* feat: set latex default throwOnError is false and aviod redos

* feat: set default inline displayMode true and overrride css

* fix: fix cr

* fix: fix cr

* chore: chengelog of 2.0.0-alpha.11 (#1264)

* feat: bubble.lost

* feat: css

* docs:更新change log

* feat: Attachments add ref fun: select to select files & fix maxcount error (#1266)

* feat: attachments

* feat: attachments

* chore: lint

* feat: attachments

* chore: test

* docs: fix used Bubble.List demo error (#1269)

* docs: site update

* docs: site update

* chore: lint

* chore: lint

* chore: test

* docs: Chinese Link Processing (#1270)

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* fix: fix key repeat (#1273)

Co-authored-by: jinyang <[email protected]>

* feat(XMarkdown): add block and streamstatus to code component (#1272)

* feat: code token support block and streamStatus

* fix: fix lint

* fix: fix cr

* docs: api desc

---------

Co-authored-by: jinyang <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs: Organize and optimize documents of chat provider (#1274)

* docs: site update

* docs: site update

* chore: lint

* chore: lint

* chore: test

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* docs: Chinese Link Processing

* chore: changelog of 2.0.0-alpha.12 (#1275)

* feat: bubble.lost

* feat: css

* docs:更新change log

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.12

* fix: fix user code paragraph link renderer not work (#1276)

Co-authored-by: jinyang <[email protected]>

* feat: ThoughtChain & Think add blink  (#1278)

* feat: add

* fix: css

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: add blink to ThoughtChain (#1286)

* feat: add

* fix: css

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: blink

* feat: thoughtchain 闪动

* feat: thoughtchain 闪动

* feat: 更新文档

* feat: Actions fade in (#1288)

* feat: Actions fade in

* feat: Actions fade in

* feat: Actions fade in

* feat: 更新文档

* feat:  delete Bubble.List suffix (#1285)

* feat: blink

* feat: test

* feat: 更新文档

* feat: 更新文档

* feat: update

* feat: 更新测试用例

* docs: the style with ComponentChangelog in the site (#1290)

* feat: 修复更新日志样式问题

* fix: code reivew comment

---------

Co-authored-by: Mickey <[email protected]>

* feat: Actions motions &  prompts motions (#1289)

* feat: Actions fade in

* feat: Actions fade in

* feat: Actions fade in

* feat: 更新文档

* feat: action motion

* feat: 更新测试用例

* feat: 更新测试用例

* feat: 更新测试用例

* feat: 更新测试用例

* chore: changelog of 2.0.0-alpha.13 (#1292)

* feat: bubble.lost

* feat: css

* docs:更新change log

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.12

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* chore: changelog of 2.0.0-alpha.13

* fix: fix dompurifyConfig ALLOWED_TAGS wrong merge to ADD_TAGS

* fix: fix fenced code streamStatus set wrong

* fix: fix ci

* feat: peer dependece antd

* chore: overrides antd

* chore: overrides

* chore: antd

* fix: fix ci

* chore: antd version

* chore: antd

* chore: update antd 6.00-alpha.4 (#1300)

* feat: link docs

* feat: link docs

* feat: link docs

* feat: link docs

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* chore: update antdv6

* feat: link docs

* chore: update antdv6

* chore: revert antd 6.0.0alpha.4 type change

* refactor(types): rename SteamingOption to StreamingOption and modify docs

* docs: api description

* docs: document update error (#1303)

* feat: markdown theme (#1305)

* chore: 整理文件

* chore: 整理文件

* chore: css

* feat: link docs

* feat: link

* feat: link

* fix: fix set code streamStastus wrong when code after \n\n (#1307)

Co-authored-by: jinyang <[email protected]>

* style(XMarkdown): migrate component styles from Less to CSS (#1306)

* style: covert .less to .css

* fix: fix style

* fix: fix css build error

---------

Co-authored-by: jinyang <[email protected]>

* feat: commit

* feat: token of blinkMotion (#1318)

* feat: token of blinkMotion

* test: lint

* feat: lint

* chore: changelog of 2.0.0-alpha.15 (#1310)

* chore: version

* feat: update markdown

* feat: update

* feat: push

* chore:changelog of 2.0.0-alpha.15

* chore:changelog of 2.0.0-alpha.15

* feat: FileCard image load  (#1311)

* feat: card file image loading

* feat: card file image loading

* feat: card file image loading

* feat: token of blinkMotion

* feat: card file image loading

* test: file-card

* feat: lint

* feat(XMarkdown): cache incomplete table & HTML tokens in useStreaming (#1322)

* feat: useStreaming support cache table and support incomplete-html

* docs: format docs config

* docs: streaming syntax docs

* fix: fix code review

* feat: stream incomplete regex avoid redos attack

* feat: change function type

---------

Co-authored-by: Mickey <[email protected]>

* feat: lint

* feat: lint

* fix(XMarkdown): deafult table style (#1324)

* fix: table can scroll when content width over width

* fix: fix cr

* feat(XMarkdown): 全类型缓存映射 & 透传缓存原文本 & 文档优化 (#1325)

* feat: pass cache raw data to incomplete-token and map all cache token to incomplete-token

* feat: modify testcase

---------

Co-authored-by: Mickey <[email protected]>

* chore(XMarkdown): modify theme style and format docs (#1326)

* docs: modify docs style

* chore: modify demo and css

* feat: edit

* feat: sop

* feat: sop

* chore: changelog of 2.0.0-alpha.16

* feat: agent

* feat(XMarkdown): pass true when disabled and checked props exist (#1328)

* feat: pass true when checkbox disabled and checked exist

* fix: fix test

* chore: Added notification capability and configured WearFox notifications (#1329)

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: wearfox

* feat: test

* feat: test

* feat: sender

* feat: sender

* feat: remove unnessary heading cache and modify demo

* docs: format docs

* chore: test case

* docs: modify custom plugin docs

* docs: format html skeleton width

* docs: update Doc model from siliconcloud to bigmodel (#1335)

* docs: update docs

* feat: updatemodel

* feat: updatemodel

* perf(XMarkdown): use useMemo to optimize docs render & reduce useless calc (#1337)

* feat: performance and docs

* docs: basic demo

* fix: fix ci

* refactoring: bubble delete components props & internal props enhancement  (#1338)

* refactor: delete components props & internal props enhancement

* feat: updatemodel

* test: snapshots update

* feat: 1

* feat: docs

* docs: Change demo image URL in README (#1340)

* chore: next merge  next-alpha (#1339)

* chore: version

* feat: update markdown

* feat: update

* feat: push

* chore:changelog of 2.0.0-alpha.15

* chore:changelog of 2.0.0-alpha.15

* docs: xmarkdown theme

* chore: changelog of 2.0.0-alpha.16

* chore: changelog of 2.0.0-alpha.16

* feat: updatemodel

* feat: updatemodel

* feat: updatemodel

* feat: updatemodel

* docs: update docs

* docs: update docs

* docs: update docs

* fix: pathname

* feat: updatemodel

* feat: docs

* feat: docs

* fix: fix lint

* docs: update

* docs: update demo (#1341)

* feat: 1

* feat: docs

* docs: update

* docs: update demo

* docs: update demo

* feat: Replace the operation icons of HighlightCode and Mermaid in XMarkdown (#1344)

* chore: remove unused devDependencies (#1350)

* feat: sender

* feat: sender

* feat: sender

* feat: sender

* feat: sender

* feat: sender

* feat: skill

* feat: skill

* feat: sender

* feat: sender

* feat: sender

* fix: sender

* fix: sender lint

* fix: sender lint

* feat: update tsconfig

* feat: cnavas

* feat: cnavas

* feat: cnavas

* feat: cnavas

* feat: cnavas

* test: slote test

* feat: cnavas

* test: speech 覆盖率

* test: speech 覆盖率

* test: sender

* test: sender

* test: sender

* test: sender

* feat: test

* feat: test

* test: sende

* test: sende

* test: sende

* test: sende

* test: sendee

---------

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: afc163 <[email protected]>
Co-authored-by: jinyang <[email protected]>
Co-authored-by: doki- <[email protected]>
Co-authored-by: Div627 <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: iamkun-2 <[email protected]>
Co-authored-by: elrrrrrrr <[email protected]>
Co-authored-by: anxLiang <[email protected]>
Co-authored-by: div627 <[email protected]>
Co-authored-by: guxingke201 <[email protected]>
Co-authored-by: 彭星 <[email protected]>
Co-authored-by: HongYang <[email protected]>
Co-authored-by: jiyang.hy <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rain120 <[email protected]>
Co-authored-by: BuHao <[email protected]>

* fix(XMarkdown): fix truncated-emoji encoding error & strip incomplete HTML

* fix: test case

* feat: test

* feat: css

* feat: css

* feat: css

* feat: css

* feat: css

* feat: css

* feat: test

* test: use-speech

* feat: add semantic for suggestion & remove redundant 'Enter' to trigger the submit logic & onSelect add selectedOptions params (#1406)

* fix: attachments show extension

* feat: test

* feat: semantic

* test: snap

* feat: test

* feat: test

* feat: test

* feat: test

* feat: suggestion

* test: suggestion

* test: suggestion

* test: use-active

* feat: test

* test: use-active

* test: use-active

* test: use-active

* test: use-active

* test: suggestion

* test: suggestion

* feat: semantic of actions (#1433)

* feat: semantic

* feat: actions

* feat: actions

* test: snapshots updated

* fix: class

* feat: deepseek

* feat: deepseek

* fest: Actions.Item

* fest: Actions.Item

* refactor(XMarkdown): move mermaid & highlight to standalone components, drop x-markdown dependency (#1402)

* feat: move code highlighter to x components

* feat: move x-markdown mermaid and highlight to components and remove x-markdown's dependence

* fix: remove console

* chore: remove x-markdown css and token script

* fix: fix cr

* fix: use Actions.copy instead of navigator.clipboard to prevent compatibility issues

* chore: modify codeHighlighter and mermaid locale config

* fix: fix build preview

* chore: modify x-markdown father build config

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: modify build config

* docs: description

* fix: fix test case

* fix: fix ci

* fix: fix ci

* fix: fix ci

* docs: modify mermaid code highlighter sources docs

* style: use componentCls instead of & avoid css loss

* docs: mermaid and code highlighter cover

* feat: mermaid add onRenderTypeChange props and mofidy semantic

* feat: change mermaid to peerDependece and lazy log

* fix: fix ci

* fix: fix ci

* fix: fix ci

* fix: fix ci

* chore: remove declare module

* fix: fix ci

* fix: mermaid size

* fix: change package size limit

---------

Co-authored-by: Div627 <[email protected]>
Co-authored-by: Mickey <[email protected]>

* docs:  version identification of component documents (#1444)

* docs: add tag

* feat: doc

* docs: tag for components

* docs(XMarkdown): remove redundant docs, lock demo height, and add Components FAQ for block-level HTML truncation (#1451)

* docs: add FAQ explain block html tag not properyly closed

* docs: set docs height

* docs: sources docs

* docs: change source demo height

* fix: fix cr

* chore: merge

* chore: merge

* chore: merge

---------

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: afc163 <[email protected]>
Co-authored-by: jinyang <[email protected]>
Co-authored-by: Div627 <[email protected]>
Co-authored-by: wzc520pyfm <[email protected]>
Co-authored-by: doki- <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Div627 <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: afc163 <[email protected]>
Co-authored-by: iamkun-2 <[email protected]>
Co-authored-by: elrrrrrrr <[email protected]>
Co-authored-by: anxLiang <[email protected]>
Co-authored-by: guxingke201 <[email protected]>
Co-authored-by: 彭星 <[email protected]>
Co-authored-by: HongYang <[email protected]>
Co-authored-by: jiyang.hy <[email protected]>
Co-authored-by: Rain120 <[email protected]>
Co-authored-by: BuHao <[email protected]>

* chore(deps-dev): bump @happy-dom/jest-environment from 18.0.1 to 20.0.11 (#1423)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump typescript from 5.8.3 to 5.9.3 (#1421)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump sharp from 0.33.5 to 0.34.5 (#1374)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump @npmcli/run-script from 9.1.0 to 10.0.3 (#1373)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump actions/upload-artifact from 4 to 5 (#1267)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: afc163 <[email protected]>

* chore(deps-dev): bump open from 10.2.0 to 11.0.0 (#1422)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: declare dependence (#1459)

Co-authored-by: Mickey <[email protected]>

* chore: changelog  of  2.1.0 (#1461)

* chore: changelog

* chore: changelog of 2.1.0

* chore: changelog of 2.1.0

* chore: changelog of 2.1.0

* docs(prompts): modify semanticType (#1464)

* docs(prompts): modify semanticType

* docs(prompts): delete semanticType

* fix(Sender): submit disabled & submit params (#1472)

* fix: submit disabled

* fix: submit disabled

* feat: update

* feat: update

* test: css

* fix: sideEffects avoid css dropped in webpack

* fix: correct scripts tsconfig typeRoots (#1483)

* fix: correct scripts tsconfig typeRoots

* chore: remove redundant typeRoots

* docs(Suggestion): The custom demo for the suggestion section fixes the issue where tags weren't generated after losing focus following input. (#1463)

* fix(Suggestion): The custom demo for the suggestion section fixes the issue where tags weren't generated after losing focus following input.

* fix(Suggestion): The custom demo for the suggestion section fixes the issue where tags weren't generated after losing focus following input.

* docs(Suggestion): Demo bug fixes

---------

Co-authored-by: shida <[email protected]>
Co-authored-by: Mickey <[email protected]>

* fix(Sender): Sender  onchange & slot skill placeholder (#1477)

* fix: submit disabled

* fix: submit disabled

* feat: update

* feat: update

* test: css

* fix: onchange

* fix: onchange

* fix: sender onchange

* fix: sender onchange

* feat: sender

* feat: sender

* fix: sender onchange

* fix: sender

* test: sender

* test: snap

* test: snap

* test: snap

* test: actions

* fix: relying on mermaid to fix umi MFSU checks (#1475)

* fix: depend…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working lgtm This PR has been approved by a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

下载最新的ant-design/x 2.1.0版本后,启动项目,有报错

3 participants