From a521061eb60f5edddb2de5295a977e57c04fcb7e Mon Sep 17 00:00:00 2001 From: Mohan Date: Mon, 10 Aug 2026 12:37:15 +0800 Subject: [PATCH] refactor(theme): tokenize admin editor and user/tag pages --- src/views/admin/ArticleEditorView.vue | 73 +++++++++++++++++++-------- src/views/admin/TagListView.vue | 63 +++++++++++++++-------- src/views/admin/UserListView.vue | 63 ++++++++++++----------- 3 files changed, 126 insertions(+), 73 deletions(-) diff --git a/src/views/admin/ArticleEditorView.vue b/src/views/admin/ArticleEditorView.vue index d9fc050..9e57dc6 100644 --- a/src/views/admin/ArticleEditorView.vue +++ b/src/views/admin/ArticleEditorView.vue @@ -223,14 +223,16 @@ onMounted(() => { \ No newline at end of file diff --git a/src/views/admin/TagListView.vue b/src/views/admin/TagListView.vue index c1a3c47..d63072d 100644 --- a/src/views/admin/TagListView.vue +++ b/src/views/admin/TagListView.vue @@ -157,18 +157,25 @@ onMounted(load) } .page-title { + font-family: var(--song-font-display); + font-weight: 400; margin: 0; - font-size: 20px; + font-size: 22px; } .btn-primary { padding: 9px 16px; - background: #3b82f6; - color: #fff; + background: var(--ac-primary-strong); + color: var(--ac-primary-text); border: none; - border-radius: 6px; + border-radius: var(--song-radius-l); cursor: pointer; font-size: 14px; + transition: opacity var(--song-dur-1) var(--song-ease); +} + +.btn-primary:hover { + opacity: 0.9; } .tag-form { @@ -179,28 +186,42 @@ onMounted(load) .form-input { padding: 9px 12px; - border: 1px solid #d3d8e0; - border-radius: 6px; + border: 1px solid var(--ac-input-border); + border-radius: var(--song-radius-l); font-size: 14px; flex: 1; + background: var(--ac-bg-card); + color: var(--ac-text); + transition: border-color var(--song-dur-1) var(--song-ease); +} + +.form-input:focus { + border-color: var(--ac-primary); + outline: none; } .btn-plain { padding: 8px 16px; - border: 1px solid #d3d8e0; - border-radius: 6px; - background: #fff; - color: #5c6470; + border: 1px solid var(--ac-input-border); + border-radius: var(--song-radius-l); + background: var(--ac-bg-card); + color: var(--ac-text-secondary); cursor: pointer; font-size: 14px; + transition: border-color var(--song-dur-1) var(--song-ease), color var(--song-dur-1) var(--song-ease); +} + +.btn-plain:hover { + border-color: var(--ac-primary); + color: var(--ac-primary); } .tag-table { width: 100%; border-collapse: collapse; - background: #fff; - border: 1px solid #e5e5ea; - border-radius: 8px; + background: var(--ac-bg-card); + border: 1px solid var(--ac-border); + border-radius: var(--song-radius-l); overflow: hidden; } @@ -208,17 +229,17 @@ onMounted(load) .tag-table td { padding: 10px 14px; text-align: left; - border-bottom: 1px solid #eee; + border-bottom: 1px solid var(--ac-border); font-size: 14px; } .tag-table th { - background: #f7f8fa; - color: #5c6470; + background: var(--ac-surface); + color: var(--ac-text-secondary); } .tag-desc { - color: #8a93a3; + color: var(--ac-text-disabled); font-size: 12px; } @@ -230,21 +251,21 @@ onMounted(load) .btn-link { border: none; background: none; - color: #3b82f6; + color: var(--ac-primary); cursor: pointer; font-size: 13px; padding: 0; } .btn-link.danger { - color: #d33c3c; + color: var(--ac-danger); } .error-text { - color: #d33c3c; + color: var(--ac-danger); } .hint-text { - color: #8a93a3; + color: var(--ac-text-disabled); } \ No newline at end of file diff --git a/src/views/admin/UserListView.vue b/src/views/admin/UserListView.vue index 83cff61..108179d 100644 --- a/src/views/admin/UserListView.vue +++ b/src/views/admin/UserListView.vue @@ -159,16 +159,18 @@ onMounted(load) \ No newline at end of file