Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
bit-pm
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
燕伟桐
bit-pm
Commits
2f18622d
Unverified
提交
2f18622d
authored
5月 06, 2025
作者:
Will Chen
提交者:
GitHub
5月 06, 2025
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Open markdown links externally (#100)
上级
7e48b748
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
22 行增加
和
2 行删除
+22
-2
DyadMarkdownParser.tsx
src/components/chat/DyadMarkdownParser.tsx
+22
-2
没有找到文件。
src/components/chat/DyadMarkdownParser.tsx
浏览文件 @
2f18622d
...
@@ -12,6 +12,7 @@ import { useAtomValue } from "jotai";
...
@@ -12,6 +12,7 @@ import { useAtomValue } from "jotai";
import
{
isStreamingAtom
}
from
"@/atoms/chatAtoms"
;
import
{
isStreamingAtom
}
from
"@/atoms/chatAtoms"
;
import
{
CustomTagState
}
from
"./stateTypes"
;
import
{
CustomTagState
}
from
"./stateTypes"
;
import
{
DyadOutput
}
from
"./DyadOutput"
;
import
{
DyadOutput
}
from
"./DyadOutput"
;
import
{
IpcClient
}
from
"@/ipc/ipc_client"
;
interface
DyadMarkdownParserProps
{
interface
DyadMarkdownParserProps
{
content
:
string
;
content
:
string
;
...
@@ -29,11 +30,27 @@ type ContentPiece =
...
@@ -29,11 +30,27 @@ type ContentPiece =
|
{
type
:
"markdown"
;
content
:
string
}
|
{
type
:
"markdown"
;
content
:
string
}
|
{
type
:
"custom-tag"
;
tagInfo
:
CustomTagInfo
};
|
{
type
:
"custom-tag"
;
tagInfo
:
CustomTagInfo
};
const
customLink
=
({
node
,
...
props
}:
{
node
?:
any
;
[
key
:
string
]:
any
})
=>
(
<
a
{
...
props
}
onClick=
{
(
e
)
=>
{
const
url
=
props
.
href
;
if
(
url
)
{
e
.
preventDefault
();
IpcClient
.
getInstance
().
openExternalUrl
(
url
);
}
}
}
/>
);
export
const
VanillaMarkdownParser
=
({
content
}:
{
content
:
string
})
=>
{
export
const
VanillaMarkdownParser
=
({
content
}:
{
content
:
string
})
=>
{
return
(
return
(
<
ReactMarkdown
<
ReactMarkdown
rehypePlugins=
{
[
rehypeRaw
]
}
rehypePlugins=
{
[
rehypeRaw
]
}
components=
{
{
code
:
CodeHighlight
}
as
any
}
components=
{
{
code
:
CodeHighlight
,
a
:
customLink
,
}
}
>
>
{
content
}
{
content
}
</
ReactMarkdown
>
</
ReactMarkdown
>
...
@@ -60,7 +77,10 @@ export const DyadMarkdownParser: React.FC<DyadMarkdownParserProps> = ({
...
@@ -60,7 +77,10 @@ export const DyadMarkdownParser: React.FC<DyadMarkdownParserProps> = ({
?
piece
.
content
&&
(
?
piece
.
content
&&
(
<
ReactMarkdown
<
ReactMarkdown
rehypePlugins=
{
[
rehypeRaw
]
}
rehypePlugins=
{
[
rehypeRaw
]
}
components=
{
{
code
:
CodeHighlight
}
as
any
}
components=
{
{
code
:
CodeHighlight
,
a
:
customLink
,
}
}
>
>
{
piece
.
content
}
{
piece
.
content
}
</
ReactMarkdown
>
</
ReactMarkdown
>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论