此次提交主要调整了应用的布局结构,并增加了历史记录功能,具体改动如下: - 调整了主页面的布局,优化了三栏布局的比例和间距,使界面更加清晰。 - 优化了组件的层级,使用了卡片式设计,增强了视觉层级感。 - 增加了历史记录功能,用户可以查看和复用之前的 prompt 和优化结果。 - 优化了深色主题下的颜色搭配,提高了可读性。 - 统一了组件的样式,保持了视觉一致性。 - 调整了部分组件的结构和样式,使其更易于维护和扩展。 - 修改了 PromptManager,增加了获取历史记录,添加到历史记录,清除历史记录的方法 - 修改了 HistoryDrawer 组件,增加了历史记录展示 - 修改了 App 组件,调整了布局,增加了对历史记录的调用 - 修改了 ModelManager 组件,调整了弹窗的样式 - 修改了 InputPanel 组件,增加label,placeholder 属性,修改了组件的样式 - 修改了 OutputPanel 组件,增加了 loading 状态 - 修改了 PromptPanel 组件,修改了组件的样式 - 修改了 package.json,增加了 @vue/test-utils 依赖 - 修改了 vite.config.js,增加了测试覆盖率配置
45 lines
919 B
JavaScript
45 lines
919 B
JavaScript
import { vi } from 'vitest'
|
|
import { config } from '@vue/test-utils'
|
|
|
|
// 模拟 Teleport 组件
|
|
config.global.stubs = {
|
|
Teleport: {
|
|
template: '<div><slot /></div>'
|
|
}
|
|
}
|
|
|
|
// 模拟 localStorage
|
|
const localStorageMock = {
|
|
store: new Map(),
|
|
getItem: vi.fn((key) => {
|
|
return localStorageMock.store.get(key) || null;
|
|
}),
|
|
setItem: vi.fn((key, value) => {
|
|
localStorageMock.store.set(key, value);
|
|
}),
|
|
removeItem: vi.fn((key) => {
|
|
localStorageMock.store.delete(key);
|
|
}),
|
|
clear: vi.fn(() => {
|
|
localStorageMock.store.clear();
|
|
})
|
|
};
|
|
|
|
Object.defineProperty(window, 'localStorage', {
|
|
value: localStorageMock,
|
|
writable: true,
|
|
configurable: true
|
|
});
|
|
|
|
// 在每个测试之前重置 localStorage
|
|
beforeEach(() => {
|
|
localStorageMock.store.clear();
|
|
vi.clearAllMocks();
|
|
});
|
|
|
|
// 模拟 clipboard API
|
|
Object.defineProperty(navigator, 'clipboard', {
|
|
value: {
|
|
writeText: vi.fn()
|
|
}
|
|
})
|