feat: support Chinese nickname in registration

- User input "昵称" stored in `name` field (supports Chinese)
- `username` auto-generated (PocketBase requires ASCII)
- Password rules displayed inline with real-time validation
- All UI displays prefer `name` over `username`

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
congsh
2026-04-18 13:01:41 +08:00
parent 262f946a4e
commit 5cec2101af
13 changed files with 191 additions and 74 deletions
+2 -1
View File
@@ -11,6 +11,7 @@ import NotificationPanel from '@/components/common/NotificationPanel.vue'
import CreateGroupDialog from '@/components/group/CreateGroupDialog.vue'
import JoinGroupDialog from '@/components/group/JoinGroupDialog.vue'
import { Monitor, HomeFilled, Grid, Plus, Search, Bell, AlarmClock, SwitchButton, Document } from '@element-plus/icons-vue'
import { displayName } from '@/types'
const router = useRouter()
const route = useRoute()
@@ -151,7 +152,7 @@ const pageTitle = computed(() => {
class="user-avatar"
alt=""
/>
<span class="user-name">{{ userStore.user?.username }}</span>
<span class="user-name">{{ displayName(userStore.user) }}</span>
<button class="logout-btn" @click="handleLogout" title="退出登录">
<el-icon><SwitchButton /></el-icon>
</button>