diff --git a/cwd-admin/src/styles/common.less b/cwd-admin/src/styles/common.less index 4d13997..293be75 100644 --- a/cwd-admin/src/styles/common.less +++ b/cwd-admin/src/styles/common.less @@ -39,4 +39,111 @@ button { opacity: 1; transform: translate(-50%, 0); } +} + +.page { + display: flex; + flex-direction: column; + gap: 12px; +} + +.page-title { + margin: 0; + font-size: 18px; + color: var(--text-primary); +} + +.page-hint { + font-size: 14px; + color: var(--text-secondary); +} + +.page-error { + font-size: 14px; + color: var(--color-danger); +} + + + +.card { + background-color: var(--bg-card); + border-radius: 6px; + border: 1px solid var(--border-color); + padding: 12px 18px; + margin-bottom: 1em; +} + +.card-header { + display: flex; + justify-content: space-between; + align-items: center; + padding: 6px 0; + transition: background-color 0.2s; +} + +.card-title { + margin: 0; + font-size: 16px; + font-weight: 600; + color: var(--text-primary); +} + +.card-icon { + font-size: 12px; + color: var(--text-secondary); + transition: transform 0.2s ease; +} + +.card-icon.expanded { + transform: rotate(180deg); +} + +.card-subtitle { + margin: 0 0 12px; + font-size: 15px; + font-weight: 600; + color: var(--text-primary); +} + + +.card-actions { + display: flex; + flex-wrap: wrap; + gap: 10px; + justify-content: flex-end; +} + +.card-button { + padding: 8px 14px; + border-radius: 4px; + border: none; + background-color: var(--primary-color); + color: var(--text-inverse); + font-size: 14px; + cursor: pointer; + min-width: 100px; +} + +.card-button.secondary { + background-color: var(--bg-sider); + color: var(--text-primary); + border: 1px solid var(--border-color); +} + +.card-button.secondary:hover { + background-color: var(--bg-hover); + border-color: var(--border-color); +} + +.card-button:disabled { + opacity: 0.7; + cursor: default; +} + +.card-title-row { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + margin-bottom: 12px; } \ No newline at end of file diff --git a/cwd-admin/src/styles/components/analyticsvisit.less b/cwd-admin/src/styles/components/analyticsvisit.less index 24aabe3..7586fa8 100644 --- a/cwd-admin/src/styles/components/analyticsvisit.less +++ b/cwd-admin/src/styles/components/analyticsvisit.less @@ -1,15 +1,3 @@ -.page { - display: flex; - flex-direction: column; - gap: 12px; -} - -.page-title { - margin: 0; - font-size: 18px; - color: var(--text-primary); -} - .toolbar { display: flex; justify-content: flex-start; @@ -33,37 +21,6 @@ color: var(--text-primary); } -.card { - background-color: var(--bg-card); - border-radius: 6px; - border: 1px solid var(--border-color); - padding: 16px 18px; -} - -.card-title { - margin: 0 0 12px; - font-size: 16px; - color: var(--text-primary); -} - -.card-title-row { - display: flex; - align-items: center; - justify-content: space-between; - gap: 12px; - margin-bottom: 12px; -} - -.page-hint { - font-size: 14px; - color: var(--text-secondary); -} - -.page-error { - font-size: 14px; - color: var(--color-danger); -} - .stats-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); diff --git a/cwd-admin/src/styles/components/comments.less b/cwd-admin/src/styles/components/comments.less index 3f7b97c..530fb5c 100644 --- a/cwd-admin/src/styles/components/comments.less +++ b/cwd-admin/src/styles/components/comments.less @@ -1,15 +1,3 @@ -.page { - display: flex; - flex-direction: column; - gap: 12px; -} - -.page-title { - margin: 0; - font-size: 18px; - color: var(--text-primary); -} - .toolbar { display: flex; justify-content: space-between; @@ -49,16 +37,6 @@ min-width: 70px; } -.page-hint { - font-size: 14px; - color: var(--text-secondary); -} - -.page-error { - font-size: 14px; - color: var(--color-danger); -} - .comment-table { background-color: var(--bg-card); border: 1px solid var(--border-color); @@ -386,103 +364,6 @@ text-decoration: underline; } -.modal-overlay { - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: rgba(0, 0, 0, 0.5); - display: flex; - align-items: stretch; - justify-content: flex-end; - z-index: 2000; -} - -.modal { - background-color: var(--bg-card); - border-radius: 0; - box-shadow: var(--shadow-card); - width: 100%; - max-width: 600px; - padding: 20px 20px 24px; - display: flex; - flex-direction: column; - gap: 16px; - transform: translateX(0); - animation: drawer-in 0.2s ease-out; - overflow-y: auto; -} - -.modal-title { - margin: 0; - font-size: 16px; - font-weight: 600; - color: var(--text-primary); -} - -.modal-body { - display: flex; - flex-direction: column; - gap: 12px; -} - -.modal-actions { - display: flex; - justify-content: flex-end; - gap: 10px; - margin-top: 4px; -} - -.modal-btn { - padding: 8px 16px; - border-radius: 4px; - font-size: 14px; - cursor: pointer; - border: 1px solid transparent; -} - -.modal-btn.primary { - background-color: var(--primary-color); - color: var(--text-inverse); -} - -.modal-btn.secondary { - background-color: var(--bg-sider); - border-color: var(--border-color); - color: var(--text-primary); -} - -.modal-btn:hover { - opacity: 0.9; -} - -.form-item { - display: flex; - flex-direction: column; - gap: 6px; -} - -.form-label { - font-size: 13px; - color: var(--text-secondary); -} - -.form-input { - padding: 8px 10px; - border-radius: 4px; - border: 1px solid var(--border-color); - background-color: var(--bg-input); - color: var(--text-primary); - font-size: 13px; - outline: none; -} - -.form-input:focus { - border-color: var(--primary-color); - box-shadow: 0 0 0 1px rgba(9, 105, 218, 0.2); -} - @keyframes drawer-in { from { transform: translateX(100%); diff --git a/cwd-admin/src/styles/components/data.less b/cwd-admin/src/styles/components/data.less index 0956363..4c0e86e 100644 --- a/cwd-admin/src/styles/components/data.less +++ b/cwd-admin/src/styles/components/data.less @@ -1,37 +1,5 @@ .page { - display: flex; - flex-direction: column; - gap: 12px; - max-width: 600px; - /* Increased width slightly */ -} - -.page-title { - margin: 0; - font-size: 18px; - color: var(--text-primary); -} - -.card { - background-color: var(--bg-card); - border-radius: 6px; - border: 1px solid var(--border-color); - padding: 16px 18px; - margin-bottom: 0.5em; - /* Reduced spacing */ -} - -.card-title { - margin: 0 0 8px; - font-size: 15px; - color: var(--text-primary); - font-weight: 600; -} - -.card-desc { - font-size: 13px; - color: var(--text-secondary); - margin: 0 0 16px; + max-width: 620px; } .action-row { @@ -47,6 +15,11 @@ min-width: 40px; } +.card-desc { + font-size: 14px; + color: var(--text-secondary); +} + .card-button { padding: 6px 14px; border-radius: 4px; diff --git a/cwd-admin/src/styles/components/setting.less b/cwd-admin/src/styles/components/setting.less index 4d0491b..89630dc 100644 --- a/cwd-admin/src/styles/components/setting.less +++ b/cwd-admin/src/styles/components/setting.less @@ -1,14 +1,5 @@ .page { - display: flex; - flex-direction: column; - gap: 12px; - max-width: 620px -} - -.page-title { - margin: 0; - font-size: 18px; - color: var(--text-primary); + max-width: 620px; } .settings-tabs { @@ -44,45 +35,6 @@ color: var(--text-inverse); } -.card { - background-color: var(--bg-card); - border-radius: 6px; - border: 1px solid var(--border-color); - padding: 12px 18px; - margin-bottom: 1em; -} - -.card-header { - display: flex; - justify-content: space-between; - align-items: center; - padding: 6px 0; - transition: background-color 0.2s; -} - -.card-title { - margin: 0; - font-size: 16px; - font-weight: 600; - color: var(--text-primary); -} - -.card-icon { - font-size: 12px; - color: var(--text-secondary); - transition: transform 0.2s ease; -} - -.card-icon.expanded { - transform: rotate(180deg); -} - -.card-subtitle { - margin: 0 0 12px; - font-size: 15px; - font-weight: 600; - color: var(--text-primary); -} .divider { height: 1px; @@ -241,39 +193,6 @@ transform: translateX(16px); } -.card-actions { - display: flex; - flex-wrap: wrap; - gap: 10px; - justify-content: flex-end; -} - -.card-button { - padding: 8px 14px; - border-radius: 4px; - border: none; - background-color: var(--primary-color); - color: var(--text-inverse); - font-size: 14px; - cursor: pointer; - min-width: 100px; -} - -.card-button.secondary { - background-color: var(--bg-sider); - color: var(--text-primary); - border: 1px solid var(--border-color); -} - -.card-button.secondary:hover { - background-color: var(--bg-hover); - border-color: var(--border-color); -} - -.card-button:disabled { - opacity: 0.7; - cursor: default; -} .form-message { font-size: 13px; @@ -321,11 +240,6 @@ } } -.page-hint { - font-size: 14px; - color: var(--text-secondary); -} - .form-hint { font-size: 12px; color: var(--text-secondary); diff --git a/cwd-admin/src/styles/components/stats.less b/cwd-admin/src/styles/components/stats.less index f01c1ec..fc5394b 100644 --- a/cwd-admin/src/styles/components/stats.less +++ b/cwd-admin/src/styles/components/stats.less @@ -1,15 +1,3 @@ -.page { - display: flex; - flex-direction: column; - gap: 12px; -} - -.page-title { - margin: 0; - font-size: 18px; - color: var(--text-primary); -} - .toolbar { display: flex; justify-content: flex-start; @@ -33,35 +21,9 @@ color: var(--text-primary); } -.card { - background-color: var(--bg-card); - border-radius: 6px; - border: 1px solid var(--border-color); - padding: 16px 18px; -} .card-title { margin: 0 0 12px; - font-size: 16px; - color: var(--text-primary); -} - -.card-title-row { - display: flex; - align-items: center; - justify-content: space-between; - gap: 12px; - margin-bottom: 12px; -} - -.page-hint { - font-size: 14px; - color: var(--text-secondary); -} - -.page-error { - font-size: 14px; - color: var(--color-danger); } .chart-tabs { diff --git a/cwd-admin/src/views/AnalyticsVisitView/index.vue b/cwd-admin/src/views/AnalyticsVisitView/index.vue index 7397f45..0942554 100644 --- a/cwd-admin/src/views/AnalyticsVisitView/index.vue +++ b/cwd-admin/src/views/AnalyticsVisitView/index.vue @@ -12,7 +12,9 @@
-

整体概览

+
+

整体概览

+
加载中...
{{ error }}
diff --git a/cwd-admin/src/views/CommentsView/components/ModalEdit.vue b/cwd-admin/src/views/CommentsView/components/ModalEdit.vue new file mode 100644 index 0000000..50019d4 --- /dev/null +++ b/cwd-admin/src/views/CommentsView/components/ModalEdit.vue @@ -0,0 +1,191 @@ + + + + + diff --git a/cwd-admin/src/views/CommentsView/index.vue b/cwd-admin/src/views/CommentsView/index.vue index 595746c..0a7cef9 100644 --- a/cwd-admin/src/views/CommentsView/index.vue +++ b/cwd-admin/src/views/CommentsView/index.vue @@ -214,68 +214,13 @@
- + @@ -295,6 +240,7 @@ import { blockEmail, fetchDomainList, } from "../../api/admin"; +import ModalEdit from "./components/ModalEdit.vue"; const route = useRoute(); const router = useRouter(); diff --git a/cwd-admin/src/views/StatsView/index.vue b/cwd-admin/src/views/StatsView/index.vue index 504622d..252ae9b 100644 --- a/cwd-admin/src/views/StatsView/index.vue +++ b/cwd-admin/src/views/StatsView/index.vue @@ -12,7 +12,9 @@
-

整体概览

+
+

整体概览

+
加载中...
{{ statsError }}
@@ -71,7 +73,9 @@
-

按域名统计

+
+

按域名统计

+
加载中...
{{ statsError }}
暂无评论数据