0.0.1-alpha.6 • Published 4 years ago

tonolucro-account-sdk-frontend-javascript v0.0.1-alpha.6

Weekly downloads
14
License
ISC
Repository
-
Last release
4 years ago

Introdução

Esse é um SDK front-end, para fazer comunicação com o firebase e funcionalidades do back-end presentes no Hasura. Esse SDK será uma ponte de comunicação, que irá auxiliar o front-end em suas comunicações com o back-end, deixando os seus devidos requisitos encapsulados, para serem usados em demasiados pontos e aplicações.

Aqui, você encontrará a documentação de como utilizar esse produto, assim como as funcionalidades presentes no moesmo.

Este possui os Resources, que são os pontos de entrada da do SDK, por onde o cliente conseguirá acesso às suas funcionalidades.

Os seguintes resources estão aqui presentes?

  • AccountResource
  • GuestResource
  • UserResource

Como acessar os resources

Para conseguir acesso ao resource, você deverá primeiro adicionar o SDK ao seu projeto, pelo comando npm install tonolucro-account-sdk-frontend-javascript ou yarn add tonolucro-account-sdk-frontend-javascript.

Com o SDK adicionado, agora vc terá acesso aos seus resorces incluindo os mesmos no arquivo de código javascript que for necessário. Importe-o no seguinte caminho:

import { AccountResource, GuestResource, UserResource } from 'tonolucro-account-sdk-frontend-javascript';

sendo que o resource importado será o necessário na vez.

Os méodos que recebem um command como parametro poderão receber um Json ou uma própria instancia do command. Em caso de passar a instancia, a mesma deverá ser feita semelhante ao exemplo abaixo, obedecendo o command do momento:

{
    const command = new SearchAccountByDocument();
    command.document = 'document';
    command.documentType = EDocumentType.CPF;

    const result = await accountResource.searchAccountByDocument(command);
}

AccountResource

Para instanciar o AccountResource é necessário que o cliente possua um token JWT. Com o token em mãos instancie a classe:

const accountResource =  new AccountResource(accessToken);

Com isso você terá acesso às funcionalidades do mesmo, que são:

  • searchAccountByDocument
  • createAccount
  • validateCodeAndEmail
  • checkAccountExistByToken

searchAccountByDocument

Esse método deverá receber como parametro um searchAccountByDocumentCommand, que se trata de um objeto com os campos document, do tipo string, e documentType, um enum com os valores CPF e CNPJ.

{
    document: document,
    lastName: documentType       // Enum com os valores: CPF, CNPJ
}

createAccount

Esse método deverá receber como parametro um createAccountCommand, que se trata de um objeto com os dados da conta a ser criada.

{
    firstName: firstName,
    lastName: lastName,
    gender: gender,              // Enum com os valores: MALE, FEMALE, UNDEFINED
    dateOfBirth: "2020-10-30T03:35:28.388Z",
    documentNumber: documentNumber,
    documentType: documentType,  // Enum com os valores: CPF, CNPJ
    password: password,
    email: email,
    phone: phone
}

validateCodeAndEmail

Esse método deverá receber como parametro um validateCodeAndEmailCommand, que se trata se um objeto com os dados de código e e-mail.

{
    firstName: firstName,
    lastName: lastName
}

checkAccountExistByToken

Esse método deverá receber como parametro um checkAccountExistByToken, que é um objeto no qual se passa um token JWT, para consultar pelos dados da conta.

{
    token: token
}

GuestResource

O GuestResource permite com que o cliente obtenha um token de acesso anonimo do firebase. Este recurso não necessita de nenhum token inicial para ser instanciado. O mesmo poderá ser instanciado.

{
    const guestResource = new GuestResource();
}

signInAnonymously

Esse método não recebe nada como parametro, e ele retorna um token de acesso anonimo válido.

UserResource

O UserResource deverá receber um token JWT válido, ou então receber uma string vazia, caso o cliente não tenha em mãos um token válido.

signInWithEmailAndPassword

Esse método deverá receber como parametro um signInWithEmailAndPasswordCommand, que se trata de um objeto que possui os campos email e password, ambos do tipo string.

Quando passadas credenciais válidas, esse método retornará um token JWT válido para aquele usuário.

{
    email: email,
    password: password       // Enum com os valores: CPF, CNPJ
}

signInWithPopup

Esse método deverá receber como parametro um signInWithPopupCommand, que deverá receber um enumerador do tipo de signIn externo, por exemplo: GOOGLE ou FACEBOOK.

O mesmo deverá retornar um provider de autenticação externa válida.