From 110fe624048cce2cedc444efb96fb681b135d565 Mon Sep 17 00:00:00 2001
From: sion123 <450702724@qq.com>
Date: Mon, 16 Mar 2026 02:41:26 +0800
Subject: [PATCH] refactor: replace ant-design components with shadcn/ui and
update toast notifications
This commit migrates from Ant Design Vue components to Shadcn/Vue components across multiple files in the web-gold frontend application. Key changes include:
- Replaced ant-design-vue imports with shadcn/ui components (Dialog, Button, Input, etc.)
- Swapped ant-design-vue message/toast system for vue-sonner toast notifications
- Updated icon usage from ant-design icons to lucide icons via @iconify/vue
- Removed unused token refresh logic that was incorrectly implemented client-side
- Applied consistent styling updates to match new component library
The token refresh functionality was removed since it should be handled server-side through axios interceptors rather than client-side intervals.
---
frontend/app/web-gold/src/App.vue | 20 +-
.../src/components/SavePromptModal.vue | 103 ++--
.../web-gold/src/components/StyleSelector.vue | 68 ++-
.../src/components/VideoPreviewModal.vue | 79 +--
.../web-gold/src/components/VideoSelector.vue | 514 ++++++++----------
.../web-gold/src/components/VoiceSelector.vue | 145 +++--
.../src/components/agents/HistoryPanel.vue | 210 +++----
.../components/agents/MyFavoritesModal.vue | 229 ++++----
8 files changed, 632 insertions(+), 736 deletions(-)
diff --git a/frontend/app/web-gold/src/App.vue b/frontend/app/web-gold/src/App.vue
index 1ae014af0c..53696e60c7 100644
--- a/frontend/app/web-gold/src/App.vue
+++ b/frontend/app/web-gold/src/App.vue
@@ -2,8 +2,6 @@
import { RouterView } from 'vue-router'
import { ref, watchEffect } from 'vue'
import SvgSprite from '@/components/icons/SvgSprite.vue'
-import { useUserStore } from '@/stores/user'
-import tokenManager from '@gold/utils/token-manager'
// ========================================
// 主题配置 - 使用 CSS 变量,无需 Ant Design
@@ -47,21 +45,9 @@ watchEffect((onCleanup) => {
onCleanup(() => media.removeEventListener('change', handler))
})
-// 用户状态
-const userStore = useUserStore()
-
-// 自动刷新 token
-watchEffect((onCleanup) => {
- let interval
- if (userStore.isLoggedIn) {
- interval = setInterval(() => {
- tokenManager.refreshToken()
- }, 5 * 60 * 1000)
- }
- onCleanup(() => {
- if (interval) clearInterval(interval)
- })
-})
+// 注意:token 刷新逻辑需要通过后端 API 实现
+// TokenManager 只是本地存储管理器,不具备刷新能力
+// 如需自动刷新,应在 axios 拦截器中处理 401 响应
// 暴露给模板使用
defineExpose({ toggleTheme, isDark })
diff --git a/frontend/app/web-gold/src/components/SavePromptModal.vue b/frontend/app/web-gold/src/components/SavePromptModal.vue
index 29ad9a600c..47d0c28154 100644
--- a/frontend/app/web-gold/src/components/SavePromptModal.vue
+++ b/frontend/app/web-gold/src/components/SavePromptModal.vue
@@ -1,9 +1,18 @@
-
- {{ item.name }}
- {{ item.category || '其他' }}
-
还没有配音
+