mirror of
https://github.com/Tencent/WeKnora.git
synced 2026-09-01 14:53:07 +08:00
feat(user-menu): add QuickNav entry for members with role-based visibility
Introduced a new QuickNav menu item for 'members' in the UserMenu component, allowing users with the appropriate role to access member-related functionalities. Updated the role alignment for QuickNav entries to ensure consistency with the Settings component. This enhancement improves navigation for users based on their permissions. Refs: #1303
This commit is contained in:
@@ -62,10 +62,14 @@
|
||||
:title="$t('tenant.switcher.menuLabel')" />
|
||||
</div>
|
||||
<div class="menu-divider"></div>
|
||||
<!-- QuickNav 入口与 Settings 的最低角色对齐:models/websearch/mcp/api
|
||||
分别对应 viewer/admin/admin/owner(详情见 Settings.vue 的
|
||||
<!-- QuickNav 入口与 Settings 的最低角色对齐:members/models/websearch/mcp/api
|
||||
分别对应 viewer/viewer/admin/admin/owner(详情见 Settings.vue 的
|
||||
SECTION_MIN_ROLE)。低角色用户看到这些入口点进去也只能看到
|
||||
role-denied 兜底页,索性藏起来。 -->
|
||||
<div v-if="canSeeQuickNav('members')" class="menu-item" @click="handleQuickNav('members')">
|
||||
<t-icon name="usergroup" class="menu-icon" />
|
||||
<span>{{ $t('tenantMember.title') }}</span>
|
||||
</div>
|
||||
<div v-if="canSeeQuickNav('models')" class="menu-item" @click="handleQuickNav('models')">
|
||||
<t-icon name="control-platform" class="menu-icon" />
|
||||
<span>{{ $t('settings.modelManagement') }}</span>
|
||||
@@ -269,6 +273,7 @@ const showTenantIdentityLine = computed(() => {
|
||||
// 与 Settings.vue 的 SECTION_MIN_ROLE 同步;这里只挂 quickNav 直接跳转的
|
||||
// 那 4 项。改这张表前请同步 Settings.vue 的对照注释。
|
||||
const QUICKNAV_MIN_ROLE: Record<string, 'viewer' | 'contributor' | 'admin' | 'owner'> = {
|
||||
members: 'viewer',
|
||||
models: 'viewer',
|
||||
websearch: 'admin',
|
||||
mcp: 'admin',
|
||||
|
||||
Reference in New Issue
Block a user