feat: add backup recovery, setup wizard and user-view guards
This commit is contained in:
@@ -2,13 +2,14 @@
|
||||
|
||||
import { useEffect, useState } from "react";
|
||||
import { authFetch, clearToken, getApiBase, getToken, logout } from "../lib/auth";
|
||||
import { setUserViewPreview, useUserViewPreview } from "../lib/viewMode";
|
||||
import { setUserViewPreview, useEffectiveRole, useUserViewPreview } from "../lib/viewMode";
|
||||
|
||||
export default function HeaderIdentity() {
|
||||
const [identity, setIdentity] = useState<{ username: string; role?: string } | null>(null);
|
||||
const [buildNumber, setBuildNumber] = useState<string | null>(null);
|
||||
const [open, setOpen] = useState(false);
|
||||
const viewAsUser = useUserViewPreview();
|
||||
const visibleRole = useEffectiveRole(identity?.role);
|
||||
|
||||
useEffect(() => {
|
||||
const token = getToken();
|
||||
@@ -102,7 +103,7 @@ export default function HeaderIdentity() {
|
||||
<a href="/profile" onClick={() => setOpen(false)}>
|
||||
My profile
|
||||
</a>
|
||||
{identity.role === "admin" ? (
|
||||
{visibleRole === "admin" ? (
|
||||
<a href="/admin" onClick={() => setOpen(false)}>
|
||||
Settings
|
||||
</a>
|
||||
|
||||
Reference in New Issue
Block a user