UserHelper

O controle UserHelper, é usado para orquestrar os dados fornecidos pelo modelo Usuario.

Sintaxe

import { UserHelper } from "Helper";

UserHelper.getUser()
    .then(console.log)
    .catch(console.error);

// object Usuario {...}

Métodos

login

static login( email : string , senha : string) : Promise

Método responsável para efetuar login do usuário passando os parâmetros e-mail e senha e retornando uma Promise. Sendo que:

Callback then

Será acionado quando o login for realizado com sucesso, retornando um objeto modelo Usuario com os dados do usuário em questão.

Callback catch

Será acionado caso o login for interrompido por um erro, retornando um objeto modelo Resultado com as informações de um erro específico.

Saiba mais sobre Promises em: Usando promises

Exemplo:

import { UserHelper } from "Helper";

UserHelper.login("usuario@teste.com", "************")
    .then((usuario)=>{
        console.log("Login realizado com sucesso :)");
    })
    .catch(console.error);
    
// Login realizado com sucesso :)

logout

static async logout ( ) : any

Esse método serve para realizar o logout (sair da conta de login) de forma assíncrono.

Exemplo:

import { UserHelper } from "Helper";

UserHelper.logout();

passwordReset

static passwordReset ( email : string ) : Promise

Útil para quando necessita redefinir a senha do usuário. Esse método recebe um parâmetro string com endereço e-mail do usuário que deseja redefinir a senha. Esse usuário receberá em seu e-mail o link de redefinição de senha. Além disso, esse método retorna uma Promise, sendo que:

Callback then

Será acionado quando a redefinição de senha for enviado com sucesso.

Callback catch

Será acionado quando o envia da redefinição de senha falhar, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";

UserHelper.passwordReset("usuario@teste.com")
    .then(()=>{
        console.log("Redefinição de senha enviado com sucesso :)");
    })
    .catch(console.error);
    
// Redefinição de senha enviado com sucesso :)

getUser

static getUser ( ) : Promise

Se quiser adquirir os dados do usuário logado no sistema, esse método é o ideal. Retorna uma Promise, sendo que:

Callback then

Será acionado se caso tiver algum usuário logado no sistema, retornando um objeto modelo Usuario com os dados do usuário em questão.

Callback catch

Será acionado se caso não possuir nenhum usuário logado, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";

UserHelper.getUser()
    .then(console.log)
    .catch(console.error);

// object Usuario {...}

capturarListaUsuario

static capturarListaUsuario ( length : number | null ) : Promise

Para obter uma lista de usuários na base de dados, esse método é o ideal. Recebe um parâmetro (não obrigatório) numérico, indicando a quantidade máxima da lista que pretende receber. Retorna uma Promise, sendo que:

Callback then

Será acionado se caso a colheita de dados da base de dados ocorrer corretamente, retornando uma lista array de objeto modelo Usuario com os dados de cada usuário.

Callback catch

Será acionado se caso ocorrer um erro na tentativa de buscar os dados da base, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";

UserHelper.capturarListaUsuario(5)
    .then(console.log)
    .catch(console.error);

/* object [
    object Usuario {...},
    object Usuario {...},
    ...
] */

capturarUsuario

static capturarUsuario ( path : string ) : Promise

Se queira buscar os dados de um usuário específico, esse método é o ideal, passando como parâmetro string o caminho de acesso no firestore. Retorna uma Promise, sendo que:

Callback then

Será acionado se caso a colheita de dados da base de dados ocorrer corretamente, retornando uma lista array de objeto modelo Usuario com os dados do usuário em questão.

Callback catch

Será acionado se caso ocorrer um erro na tentativa de buscar os dados da base, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";

UserHelper.capturarUsuario("Usuarios/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx")
    .then(console.log)
    .catch(console.error);
    
// object Usuario {...}

salvarUsuario

static salvarUsuario ( usuario : Usuario ) : Promise

Este método é responsável para salvar na base de dados as informações alteradas após ter adquirido essas informações da base em um objeto modelo Usuario. Ele recebe como parâmetro (obrigatório) um objeto modelo Usuario com o seu path já definido, caso o contrário, um erro ocorrerá e os dados não serão salvos, para esse caso específico, o método criarUsuario seria o ideal. Retorna uma Promise, sendo que:

Callback then

Será acionado se caso alteração de dados forem salvas na base de dados corretamente, retornando um objeto modelo Usuario com os dados do usuário em questão.

Callback catch

Será acionado se caso ocorrer um erro na tentativa de salvar os dados na base, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";

async function alterarNome(novoNome){
    ler user = await UserHelper.getUser();
    
    console.log(user);
    
    /* object Usuario {
        "path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
        "nome": "Fulano"
    } */
    
    user.nome = novoNome;
    
    UserHelper.salvarUsuario(user)
        .then(console.log)
        .catch(console.error);
        
    /* object Usuario {
        "path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
        "nome": "Ciclano"
    } */
}

alterarNome("Ciclano");

criarUsuario

static criarUsuario ( novoUsuario : Usuario , senha : string ) : Promise

Se pretende criar um novo usuário, esse método é perfeito para isso. Ele recebe dois parâmetros obrigatórios, o primeiro parâmetro é um objeto modelo Usuario, nele deve conter o e-mail do usuário definido, caso o contrário, um erro ocorrerá; já o segundo parâmetro é uma string da senha definida pelo usuário. Retorna uma Promise, sendo que:

Callback then

Será acionado se caso o usuário for criado e seus dados forem salvas na base de dados corretamente, retornando um objeto modelo Usuario com os dados do usuário incluindo o seu novo path criado.

Callback catch

Será acionado se caso ocorrer um erro na tentativa de criar ou salvar os dados na base, retornando um objeto modelo Resultado com as informações de um erro específico.

Exemplo:

import { UserHelper } from "Helper";
import { Usuario } from "Models";

let usuario = new Usuario();
usuario.email = "ciclano@teste.com";
usuario.nome = "Ciclano";

conole.log(usuario);
/* object Usuario {
    "path": null,
    "email": "ciclano@teste.com",
    "nome": "Ciclano"
} */

let senha = "*************";

criarUsuario()
    .then(console.log)
    .catch(console.error);
    
/* object Usuario {
    "path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
    "email": "ciclano@teste.com",
    "nome": "Ciclano"
} */

Last updated