From 921e3761e51aedaab72ed2f24478ef4df6b96f9f Mon Sep 17 00:00:00 2001 From: Hash Palak Date: Tue, 17 Jun 2025 14:29:59 +0600 Subject: [PATCH] Exclude Admin Control quick link based on user permissions --- libs/common/src/lib/routes/routes.ts | 1 - libs/ui/src/lib/assistant/assistant.component.ts | 13 +++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/libs/common/src/lib/routes/routes.ts b/libs/common/src/lib/routes/routes.ts index 20d911d24..0722cf181 100644 --- a/libs/common/src/lib/routes/routes.ts +++ b/libs/common/src/lib/routes/routes.ts @@ -21,7 +21,6 @@ export const internalRoutes: Record = { title: $localize`Settings` }, adminControl: { - excludeFromAssistant: true, path: 'admin', routerLink: ['/admin'], subRoutes: { diff --git a/libs/ui/src/lib/assistant/assistant.component.ts b/libs/ui/src/lib/assistant/assistant.component.ts index a5a5fdb9f..82110538c 100644 --- a/libs/ui/src/lib/assistant/assistant.component.ts +++ b/libs/ui/src/lib/assistant/assistant.component.ts @@ -626,8 +626,17 @@ export class GfAssistantComponent implements OnChanges, OnDestroy, OnInit { const searchTerm = aSearchTerm.toLowerCase(); const allRoutes = Object.values(internalRoutes) - .filter(({ excludeFromAssistant }) => { - return !excludeFromAssistant; + .filter(({ excludeFromAssistant, path }) => { + // Exclude routes based on excludeFromAssistant flag + if (excludeFromAssistant) { + return false; + } + + if (path === 'admin' && !this.hasPermissionToAccessAdminControl) { + return false; + } + + return true; }) .reduce((acc, route) => { acc.push(route);