Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
bit-pm
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
燕伟桐
bit-pm
Commits
a1aee5c2
Unverified
提交
a1aee5c2
authored
7月 08, 2025
作者:
Will Chen
提交者:
GitHub
7月 08, 2025
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Graduate file editing from experimental (#599)
上级
dfdd267f
全部展开
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
84 行增加
和
0 行删除
+84
-0
edit_code.spec.ts
e2e-tests/edit_code.spec.ts
+84
-0
edit_code.spec.ts_edited-mde-with-dyad.txt
...ests/snapshots/edit_code.spec.ts_edited-mde-with-dyad.txt
+0
-0
FileEditor.tsx
src/components/preview_panel/FileEditor.tsx
+0
-0
app_handlers.ts
src/ipc/handlers/app_handlers.ts
+0
-0
ipc_client.ts
src/ipc/ipc_client.ts
+0
-0
ipc_types.ts
src/ipc/ipc_types.ts
+0
-0
file_utils.ts
src/ipc/utils/file_utils.ts
+0
-0
schemas.ts
src/lib/schemas.ts
+0
-0
settings.tsx
src/pages/settings.tsx
+0
-0
没有找到文件。
e2e-tests/edit_code.spec.ts
0 → 100644
浏览文件 @
a1aee5c2
import
{
test
}
from
"./helpers/test_helper"
;
import
{
expect
}
from
"@playwright/test"
;
import
fs
from
"fs"
;
import
path
from
"path"
;
test
(
"edit code"
,
async
({
po
})
=>
{
const
editedFilePath
=
path
.
join
(
"src"
,
"components"
,
"made-with-dyad.tsx"
);
await
po
.
sendPrompt
(
"foo"
);
const
appPath
=
await
po
.
getCurrentAppPath
();
await
po
.
clickTogglePreviewPanel
();
await
po
.
selectPreviewMode
(
"code"
);
await
po
.
page
.
getByText
(
"made-with-dyad.tsx"
).
click
();
await
po
.
page
.
getByRole
(
"code"
)
.
locator
(
"div"
)
.
filter
({
hasText
:
"export const"
})
.
nth
(
4
)
.
click
();
await
po
.
page
.
getByRole
(
"textbox"
,
{
name
:
"Editor content"
})
.
fill
(
"export const MadeWithDyad = ;"
);
// Save the file
await
po
.
page
.
getByTestId
(
"save-file-button"
).
click
();
// Expect toast to be visible
await
expect
(
po
.
page
.
getByText
(
"File saved"
)).
toBeVisible
();
// We are NOT snapshotting the app files because the Monaco UI edit
// is not deterministic.
const
editedFile
=
fs
.
readFileSync
(
path
.
join
(
appPath
,
editedFilePath
),
"utf8"
,
);
expect
(
editedFile
).
toContain
(
"export const MadeWithDyad = ;"
);
});
test
(
"edit code edits the right file"
,
async
({
po
})
=>
{
const
editedFilePath
=
path
.
join
(
"src"
,
"components"
,
"made-with-dyad.tsx"
);
const
robotsFilePath
=
path
.
join
(
"public"
,
"robots.txt"
);
await
po
.
sendPrompt
(
"foo"
);
const
appPath
=
await
po
.
getCurrentAppPath
();
const
originalRobotsFile
=
fs
.
readFileSync
(
path
.
join
(
appPath
,
robotsFilePath
),
"utf8"
,
);
await
po
.
clickTogglePreviewPanel
();
await
po
.
selectPreviewMode
(
"code"
);
await
po
.
page
.
getByText
(
"made-with-dyad.tsx"
).
click
();
await
po
.
page
.
getByRole
(
"code"
)
.
locator
(
"div"
)
.
filter
({
hasText
:
"export const"
})
.
nth
(
4
)
.
click
();
await
po
.
page
.
getByRole
(
"textbox"
,
{
name
:
"Editor content"
})
.
fill
(
"export const MadeWithDyad = ;"
);
// Save the file by switching files
await
po
.
page
.
getByText
(
"robots.txt"
).
click
();
// Expect toast to be visible
await
expect
(
po
.
page
.
getByText
(
"File saved"
)).
toBeVisible
();
// We are NOT snapshotting the app files because the Monaco UI edit
// is not deterministic.
const
editedFile
=
fs
.
readFileSync
(
path
.
join
(
appPath
,
editedFilePath
),
"utf8"
,
);
expect
(
editedFile
).
toContain
(
"export const MadeWithDyad = ;"
);
// Make sure the robots.txt file is not edited
const
editedRobotsFile
=
fs
.
readFileSync
(
path
.
join
(
appPath
,
robotsFilePath
),
"utf8"
,
);
expect
(
editedRobotsFile
).
toEqual
(
originalRobotsFile
);
});
e2e-tests/snapshots/edit_code.spec.ts_edited-mde-with-dyad.txt
0 → 100644
浏览文件 @
a1aee5c2
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/components/preview_panel/FileEditor.tsx
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/ipc/handlers/app_handlers.ts
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/ipc/ipc_client.ts
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/ipc/ipc_types.ts
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/ipc/utils/file_utils.ts
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/lib/schemas.ts
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
src/pages/settings.tsx
浏览文件 @
a1aee5c2
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论