refactor: 重构多个组件以支持 Vue 3 语法和功能

- 将多个组件转换为 `<script setup>` 语法,提升可读性和性能
- 优化状态管理和事件处理逻辑,简化代码结构
- 更新样式和布局以适应新组件结构
- 添加新功能和修复已知问题,提升用户体验
This commit is contained in:
Yer11214
2026-07-08 18:37:11 +08:00
parent 4d0b0fb5e4
commit 349ffa4f34
189 changed files with 18278 additions and 20758 deletions

View File

@@ -63,15 +63,19 @@ function hexToRgba(hex, alpha) {
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
}
export function getThemeStyle(theme) {
const primary = theme.mainColor || DEFAULT_THEME.mainColor;
export function getThemeStyle(theme = DEFAULT_THEME) {
const safeTheme = theme || DEFAULT_THEME;
const primary = safeTheme.mainColor || DEFAULT_THEME.mainColor;
const light = safeTheme.lightColor || DEFAULT_THEME.lightColor;
return {
"--theme-primary": primary,
"--theme-light": theme.lightColor || DEFAULT_THEME.lightColor,
"--theme-aider": theme.aiderLightColor || DEFAULT_THEME.aiderLightColor,
"--theme-light": light,
"--theme-aider": safeTheme.aiderLightColor || DEFAULT_THEME.aiderLightColor,
"--theme-primary-10": hexToRgba(primary, 0.1),
"--theme-primary-20": hexToRgba(primary, 0.2),
"--theme-primary-30": hexToRgba(primary, 0.3),
"--theme-primary-70": hexToRgba(primary, 0.7),
"--theme-light-10": hexToRgba(light, 0.1),
"--theme-light-80": hexToRgba(light, 0.8),
};
}