fix: respect dashboard content visibility settings (#4975)

This commit is contained in:
Seefs
2026-05-19 18:46:21 +08:00
committed by GitHub
parent 0d4b25795a
commit 2d1ca15384
2 changed files with 73 additions and 21 deletions
+16 -1
View File
@@ -27,7 +27,7 @@ export function useStatusData<T = unknown>(
dataKey: string
): { items: T[]; loading: boolean } {
const { status, loading } = useStatus()
const enabled = status?.[enabledKey] ?? false
const enabled = status ? status[enabledKey] !== false : false
const items = (enabled ? status?.[dataKey] || [] : []) as T[]
return { items, loading }
@@ -56,3 +56,18 @@ export function useAnnouncements() {
export function useFAQ() {
return useStatusData<FAQItem>('faq_enabled', 'faq')
}
/**
* Get dashboard content panel visibility
*/
export function useDashboardContentVisibility() {
const { status } = useStatus()
const hasStatus = Boolean(status)
return {
apiInfo: hasStatus && status?.api_info_enabled !== false,
announcements: hasStatus && status?.announcements_enabled !== false,
faq: hasStatus && status?.faq_enabled !== false,
uptimeKuma: hasStatus && status?.uptime_kuma_enabled !== false,
}
}