refactor: Fix UI/UX issues across admin pages

- App.vue: max-w-4xl → max-w-6xl(讓表格不被截斷)
- 新增 AdminCredsCard.vue 共用元件,消除兩個頁面的重複認證卡片
- PermissionAdminPage / PermissionGroupsPage 改用 AdminCredsCard
- 所有 el-table 的 slot="empty" 換成 <template #empty>(Vue 3 正確用法)
- 4 個管理頁 Dialog 補 el-form rules + formRef.validate()(取代手動 if 檢查)
- MembersPage: authentik_sub / email 欄位加 show-overflow-tooltip
- PermissionGroupsPage: 成功/失敗訊息由 <p> 改為 el-alert(統一樣式)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Chris
2026-03-30 02:53:54 +08:00
parent e325642b5e
commit f3d5937d37
9 changed files with 125 additions and 143 deletions

View File

@@ -17,9 +17,9 @@
<el-skeleton v-if="loading" :rows="4" animated />
<el-table v-else :data="members" stripe border class="w-full shadow-sm">
<el-empty v-if="members.length === 0" slot="empty" description="目前無會員" />
<el-table-column prop="authentik_sub" label="Authentik Sub" min-width="200" />
<el-table-column prop="email" label="Email" min-width="200" />
<template #empty><el-empty description="目前無會員" /></template>
<el-table-column prop="authentik_sub" label="Authentik Sub" min-width="240" show-overflow-tooltip />
<el-table-column prop="email" label="Email" min-width="200" show-overflow-tooltip />
<el-table-column prop="display_name" label="顯示名稱" width="150" />
</el-table>
</div>