Skip to content

Conversation

@Cythia828
Copy link
Contributor

@Cythia828 Cythia828 commented Sep 1, 2025

变更类型

请选择以下选项以描述 PR 的类型:

  • Bug 修复(修复现有问题)
  • 新功能(添加了一个功能)
  • 代码优化(性能改进、代码重构)
  • 文档更新
  • 单测新增或修改
  • 其他(请说明):

相关问题

变更内容

CodeBlock组件接口修改
  • 新增泛型参数M,继承自MessageEntity,默认MessageEntity
  • 新增message字段,用于接受泛型类型的消息实体
  • toolbars字段修改,原来只接受无参函数,现在接收code 字符串和可选的 message 参数,从而能根据上下文内容动态渲染工具栏。
CodeBlock组件修改目的
  • 用以支持某些自定义的toolbars需要拿到当前CodeBlock所在的那条message的信息去做一些校验或操作
Content组件接口修改
  • 接口修改:新增泛型参数MPM继承自IMessageProps ,默认IMessageProps P继承自IPromptProps ,默认IPromptProps
  • 接口修改:新增replacePrompt字段,是用来替换渲染Prompt的函数组件
  • 接口修改:新增replaceMessage字段,是用来替换渲染Message的函数组件
  • 渲染:原本渲染Prompt的逻辑改成有replacePrompt就渲染replacePrompt,没有才渲染默认组件Prompt;原本渲染Message的逻辑改成有replaceMessage就渲染replaceMessage,没有才渲染默认组件Message
Content组件修改目的
  • 用以支持某些用户需要渲染自定义的PromptMessage的逻辑
Markdown组件
  • 接口修改:新增isHtmlContent字段,是用来区分是否要支持html内容显示
  • 接口修改:新增message 字段,是传给CodeBlock组件使用的
  • 组件:引入rehype-raw,支持在Markdown → HTML 的转换过程中安全地解析并渲染「原始 HTML」标签
Markdown组件修改目的
  • 支持渲染内容里带自定义html结构的情况
  • 支持修改后的CodeBlock组件的message 字段的数据来源
Message组件
  • 接口修改:新增泛型参数T,继承自MessageEntity,默认MessageEntity
  • 接口修改:新增extraRender 字段
  • 接口修改:onRegenerate方法参数改为使用泛型T
  • 接口修改:onStop 方法参数改为使用泛型T
  • 组件:在Markdown 前面增加一个卡槽,渲染extraRender ,用来支持新增的自定义结构
Message组件修改目的
  • 支持消息里带文件列表的情况
Prompt组件
  • 接口修改:新增泛型参数T,继承自PromptEntity ,默认PromptEntity
  • 接口修改:新增extraRender 字段
  • 组件:在Markdown 后面增加一个卡槽,渲染extraRender ,用来支持新增的自定义结构
Prompt组件修改目的
  • 支持问题里带文件列表的情况
其他
  • 更新demo
  • 更新单测

详细描述

  • 目标效果
image

对应 Previewer

@LuckyFBB
Copy link
Collaborator

LuckyFBB commented Sep 2, 2025

CI 挂了。
补一下demo和 previewer

@Cythia828
Copy link
Contributor Author

CI 挂了。 补一下demo和 previewer

哎呀,我补了咋拉依赖还挂了😭

@liuxy0551
Copy link
Collaborator

CI 挂了。 补一下demo和 previewer

哎呀,我补了咋拉依赖还挂了😭

CI 是因为使用了淘宝源没安装成功挂掉的, pnpm-lock.yml 文件别更新太多东西
image

@Cythia828
Copy link
Contributor Author

CI 挂了。 补一下demo和 previewer

哎呀,我补了咋拉依赖还挂了😭

CI 是因为使用了淘宝源没安装成功挂掉的, pnpm-lock.yml 文件别更新太多东西 image

我只新增了一个依赖,lock file自动生成的😓我再看下

@Cythia828 Cythia828 force-pushed the chat_support_command branch 2 times, most recently from dd10b6a to af9e5e6 Compare September 8, 2025 02:21
@Cythia828 Cythia828 force-pushed the chat_support_command branch from af9e5e6 to 8e573cd Compare September 8, 2025 02:30
@LuckyFBB LuckyFBB requested review from JackWang032, chaozwn, liuxy0551 and zwight and removed request for chaozwn September 19, 2025 02:55
@mumiao mumiao requested review from mumiao and removed request for JackWang032, liuxy0551 and zwight September 19, 2025 05:57
@mumiao mumiao marked this pull request as draft September 19, 2025 06:59
@mumiao
Copy link
Collaborator

mumiao commented Sep 19, 2025

设计层面需要考虑,我下周才有时间跟任务owner讨论,先draft

@LuckyFBB LuckyFBB added this to the Next Verison(5.1.0) milestone Sep 25, 2025
@Cythia828
Copy link
Contributor Author

1、关于input下新增的type.ts考虑将从组件内部移除,由于当初的实现方式是直接修改原组件,所以会有这个枚举的维护文件,但后期修改了设计之后,这个文件应该考虑放到应用层自己维护
2、关于chat下面entity.ts里新增的commandList fileList 考虑移除,因为这两个属性是业务属性,考虑将实体在应用层继承后去扩展新增需要的业务属性,而不是直接在rc里增加
3、关于messageprompt组件的demo,需要体现的是带样式的dom结构插入后能正常显示样式,后续会更新为插入带样式的dom结构

@Cythia828 Cythia828 force-pushed the chat_support_command branch from f96e477 to 074b483 Compare October 22, 2025 08:21
@Cythia828 Cythia828 marked this pull request as ready for review October 24, 2025 03:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants