ui: 统一图标系统/字体/文案/token,标题栏与状态栏重做,编辑器排版打磨,窗口边框设计

This commit is contained in:
hunter-dev
2026-08-30 22:17:11 +08:00
parent bd6243950c
commit ab46ec3cce
17 changed files with 242 additions and 123 deletions
+2 -1
View File
@@ -37,7 +37,8 @@ test('知识图谱:卡片+连线(消费 IPC.graph)', async () => {
// UI:先经 TitleBar 切到图谱视图(view 默认 editor),再切「知识图谱」模式
await a.page.getByTitle('切换 编辑器/图谱').click();
await a.page.getByRole('button', { name: '知识图谱' }).click();
await expect(a.page.locator('svg rect')).toHaveCount(5, { timeout: 10000 });
// 限定在知识图谱画布内统计卡片 rect(标题栏等 UI 图标也是 svg,不能全页统计)
await expect(a.page.locator('[data-testid="graph-canvas"] rect')).toHaveCount(5, { timeout: 10000 });
await a.app.close();
});
+4 -4
View File
@@ -72,18 +72,18 @@ test('FR-W2:最大化按钮图标切换', async () => {
const a = await launch(ud);
await a.invoke('vault:switch', { root: v });
const maxBtn = a.page.getByTestId('maximize-btn');
// 初始可能未最大化
const initialText = await maxBtn.textContent();
// 初始可能未最大化(图标按钮无文本,用 innerHTML 比较图标是否切换)
const initialText = await maxBtn.innerHTML();
// 点击最大化
await maxBtn.click();
await a.page.waitForTimeout(300);
const afterClickText = await maxBtn.textContent();
const afterClickText = await maxBtn.innerHTML();
// 图标应变化
expect(initialText).not.toBe(afterClickText);
// 再点还原
await maxBtn.click();
await a.page.waitForTimeout(300);
const afterRestoreText = await maxBtn.textContent();
const afterRestoreText = await maxBtn.innerHTML();
expect(afterRestoreText).toBe(initialText);
await a.app.close();
});