Fluido Provedor de Autenticação
Consiste num provedor de React para abstração do FirebaseAuth
Modo de usar
Exemplo de provedor
import ProfileProvider from '@fluido/react-profile-manager'
function App() {
return (
<ProfileProvider
firebaseApp={FirebaseApp}
pathname={currentRoute}
refreshTokenTime={currentRoute}
FCMKey={FirebaseCloudMessageKey}
onCallRedirectToPublic={function handlePathnameUnauthorized() {}}
onCallRedirectToAuthenticated={function handlePathnameAuthorizedBlock() {}}
unauthenticatedRoutes={['/', '/home', '/login']}
authenticatedRoutes={['/dashboard']}>
<YourRoutes>...</YourRoutes>
</ProfileProvider>
)
}
Exemplo do hook
import { useProfile } from '@fluido/react-profile-manager'
function MyComponent() {
const { ready, logged, user, token, FCMToken, FCMState, claims } =
userProfile()
return <div></div>
}
Especificação das propriedades do provedor
Parâmetro | default | Tipo | Descrição |
---|
firebaseApp | undefined | FirebaseApp | aplicativo firebase inicializado |
refreshTokenTime | 20 | number | tempo em segundos que o token será atualizado |
pathname | undefined | string | caminho URL para comparação das rotas autenticadas e não autenticadas |
FCMKey | undefined | string | chave para o Firebase Cloud Message |
onCallRedirectToPublic | undefined | () => {} | função é chamada quando pathname está incluso na lista authenticatedRoutes |
onCallRedirectToAuthenticated | undefined | () => {} | função é chamada quando pathname está incluso na lista unauthenticatedRoutes |
unauthenticatedRoutes | ['/login'] | string[] | lista de caminhos que chama a função onCallRedirectToAuthenticated com o usuário já autenticado |
authenticatedRoutes | [] | string[] | lista de caminhos que chama a função onCallRedirectToPublic sem usuário autenticado |
Especificação das propriedades do hook
Parâmetro | Tipo | Descrição |
---|
ready | boolean | true se o FirebaseAuth já carregou os dados do usuário |
logged | boolean | true se o usuário está autenticado |
user | FirebaseUser | dados do usuário autenticado |
token | string | token de acesso do usuário |
FCMToken | string | token identificador do FCM Z |
FCMState | 'loading' | 'ready' | 'require' | 'error' | estado em que se encontra o FCM |
claims | string | string[] | dados do usuário armazenado no FirebaseFirestore |