desktop/machines: liberar handshake e ocultar 'Sair' em sessão de máquina
- middleware: torna /machines/handshake público para permitir criação de sessão de máquina sem login prévio - nav-user: oculta botão 'Encerrar sessão' quando a sessão é de máquina (role === 'machine') Efeito: no app desktop (Tauri), o handshake passa a autenticar corretamente, o cabeçalho exibe nome/e-mail do colaborador/gestor e o portal permite abrir chamados. Nota: em navegação web comum, 'Sair' permanece visível para usuários humanos.
This commit is contained in:
parent
9ac584dcb6
commit
682d39db70
2 changed files with 6 additions and 3 deletions
|
|
@ -30,7 +30,7 @@ import {
|
|||
SidebarMenuItem,
|
||||
useSidebar,
|
||||
} from "@/components/ui/sidebar"
|
||||
import { signOut } from "@/lib/auth-client"
|
||||
import { signOut, useAuth } from "@/lib/auth-client"
|
||||
|
||||
type NavUserProps = {
|
||||
user?: {
|
||||
|
|
@ -46,6 +46,8 @@ export function NavUser({ user }: NavUserProps) {
|
|||
const router = useRouter()
|
||||
const [isSigningOut, setIsSigningOut] = useState(false)
|
||||
const [isDesktopShell, setIsDesktopShell] = useState(false)
|
||||
const { session } = useAuth()
|
||||
const isMachineSession = (session?.user?.role ?? "").toLowerCase() === "machine"
|
||||
|
||||
useEffect(() => {
|
||||
if (typeof window === "undefined") return
|
||||
|
|
@ -141,7 +143,7 @@ export function NavUser({ user }: NavUserProps) {
|
|||
<span>Notificações (em breve)</span>
|
||||
</DropdownMenuItem>
|
||||
</DropdownMenuGroup>
|
||||
{!isDesktopShell ? (
|
||||
{!isDesktopShell && !isMachineSession ? (
|
||||
<>
|
||||
<DropdownMenuSeparator />
|
||||
<DropdownMenuItem
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue