From fbe85702a9239085bd9ec123422d92275b45edef Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Sun, 24 Aug 2025 18:54:54 +0800 Subject: [PATCH] =?UTF-8?q?style(components):=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=A0=B7=E5=BC=8F=E5=92=8C=E5=B8=83=E5=B1=80?= =?UTF-8?q?=E7=BB=86=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/components/AgentChatComponent.vue | 4 +- web/src/components/AgentMessageComponent.vue | 2 +- .../components/ModelProvidersComponent.vue | 36 ++- web/src/components/ModelSelectorComponent.vue | 6 +- web/src/components/TableConfigComponent.vue | 212 ------------------ .../components/UserManagementComponent.vue | 2 +- web/src/views/SettingView.vue | 11 +- 7 files changed, 28 insertions(+), 245 deletions(-) delete mode 100644 web/src/components/TableConfigComponent.vue diff --git a/web/src/components/AgentChatComponent.vue b/web/src/components/AgentChatComponent.vue index 0b42a3bb..7198e3f8 100644 --- a/web/src/components/AgentChatComponent.vue +++ b/web/src/components/AgentChatComponent.vue @@ -178,7 +178,7 @@ const emit = defineEmits(['open-config', 'open-agent-modal']); const state = reactive({ ...props.state, debug_mode: computed(() => props.state.debug_mode ?? false), - isSidebarOpen: localStorage.getItem('chat_sidebar_open') === 'true' || true, + isSidebarOpen: localStorage.getItem('chat_sidebar_open', 'true') === 'true', waitingServerResponse: false, isProcessingRequest: false, creatingNewChat: false, @@ -226,7 +226,7 @@ onMounted(() => { // 延迟移除初始渲染标记,防止切换动画 setTimeout(() => { - state.isInitialRender = false; + state.isInitialRender = false; }, 300); }); diff --git a/web/src/components/AgentMessageComponent.vue b/web/src/components/AgentMessageComponent.vue index 5a76542b..6897f6cd 100644 --- a/web/src/components/AgentMessageComponent.vue +++ b/web/src/components/AgentMessageComponent.vue @@ -527,7 +527,7 @@ const toggleToolCall = (toolCallId) => { } ol, ul { - padding-left: 1rem; + padding-left: 1.2rem; } cite { diff --git a/web/src/components/ModelProvidersComponent.vue b/web/src/components/ModelProvidersComponent.vue index ce22939b..86fd8506 100644 --- a/web/src/components/ModelProvidersComponent.vue +++ b/web/src/components/ModelProvidersComponent.vue @@ -178,8 +178,8 @@ @@ -450,14 +450,12 @@ const filteredModels = computed(() => { border: 1px solid var(--gray-200); background-color: white; border-radius: 8px; - margin-bottom: 12px; + margin-bottom: 16px; padding: 0; - // box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); - transition: all 0.2s ease; + transition: all 0.3s ease; overflow: hidden; &:hover { - // box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06); border-color: var(--gray-300); } @@ -511,11 +509,11 @@ const filteredModels = computed(() => { .card-header { display: flex; align-items: center; - gap: 10px; + gap: 12px; cursor: pointer; - padding: 12px 14px; + padding: 16px 20px; background: white; - transition: all 0.2s ease; + transition: all 0.3s ease; &:hover { background: var(--gray-50); @@ -644,8 +642,8 @@ const filteredModels = computed(() => { .card-body { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); - gap: 10px; - padding: 12px; + gap: 12px; + padding: 16px; background: #fafafa; // 普通模型卡片样式 @@ -653,17 +651,17 @@ const filteredModels = computed(() => { width: 100%; border-radius: 6px; border: 1px solid var(--gray-200); - padding: 10px 12px; + padding: 12px 16px; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; background: white; - transition: all 0.2s ease; - min-height: 42px; + transition: all 0.3s ease; + min-height: 48px; &:hover { - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04); + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); border-color: var(--gray-400); } @@ -697,17 +695,17 @@ const filteredModels = computed(() => { display: flex; flex-direction: column; align-items: stretch; - padding: 10px 12px; + padding: 12px 16px; gap: 8px; cursor: pointer; - min-height: 64px; + min-height: 72px; background: white; border-radius: 6px; border: 1px solid var(--gray-200); - transition: all 0.2s ease; + transition: all 0.3s ease; &:hover { - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04); + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08); border-color: var(--gray-400); .card-models__header .action { diff --git a/web/src/components/ModelSelectorComponent.vue b/web/src/components/ModelSelectorComponent.vue index 71565069..54e4b10c 100644 --- a/web/src/components/ModelSelectorComponent.vue +++ b/web/src/components/ModelSelectorComponent.vue @@ -135,9 +135,9 @@ const handleSelectModel = (provider, name) => { } - - diff --git a/web/src/components/UserManagementComponent.vue b/web/src/components/UserManagementComponent.vue index 91c02d38..e1352cae 100644 --- a/web/src/components/UserManagementComponent.vue +++ b/web/src/components/UserManagementComponent.vue @@ -76,7 +76,7 @@ { display: flex; flex-direction: column; gap: 16px; - // box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); border: 1px solid var(--gray-200); } @@ -310,9 +308,12 @@ const openLink = (url) => { display: flex; align-items: center; justify-content: space-between; + // padding: 12px 0; .label { margin-right: 20px; + font-weight: 500; + color: var(--gray-800); button { margin-left: 10px; @@ -325,13 +326,9 @@ const openLink = (url) => { .services-grid { display: grid; - grid-template-columns: 1fr; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; margin-top: 20px; - - @media (min-width: 768px) { - grid-template-columns: repeat(2, 1fr); - } } .service-link-card {