Pular para o conteúdo principal

useAuth

O hook personalizado useAuth é um hook de contexto e contém verificações relacionadas ao usuário, como se o usuário está autenticado ou se é um admin, por exemplo.

Retornos

PropriedadeDescrição
userRetorna um objeto contendo o token do usuário e sua permissão
authenticateFunção que recebe um objeto Auth, que contém username e password, realiza o login e atualiza o user em caso de sucesso
deauthenticateFunção que limpa o localStorage e remove o user salvo
isAdminFunção que retorna um boolean, sendo verdadeiro caso o usuário tenha permissões de Admin
isCompanyFunção que retorna um boolean, sendo verdadeiro caso o usuário tenha permissões de Company
isCommonFunção que retorna um boolean, sendo verdadeiro caso o usuário tenha permissões de Common
isAuthenticatedFunção que retorna um boolean, sendo verdadeiro caso o usuário esteja logado
isCheckoutFunção que retorna um boolean, sendo verdadeiro caso o usuário esteja no fluxo de checkout
setIsCheckoutFunção responsável por definir que o usuário está no fluxo de checkout
isInitialLoadingFunção que retorna um boolean, sendo verdadeiro caso a aplicação tenha finalizado o carregamento inicial
setIsCheckoutFunção responsável por definir que o usuário está no fluxo de checkout

Utilização

pagina-exemplo/index.tsx
import { useAuth } from "{hooks}/useAuth"

function PaginaExemplo() {
// ...
/* Importamos as propriedades necessárias */
const { isAdmin, isCommon } = useAuth();
// ...
return (
isAdmin() && { /* Retorno de admin */}
)
}
Dica
Os hooks de permissão são muito utilizados no projeto para limitar uma 
funcionalidade a um tipo de perfil específico, e também utilizados nos
Guards.