Last updated:
0 purchases
senior platform authentication
Senior Platform Authentication #
O objetivo deste projeto é ser uma ponte de integração entre os endpoints utilizados na autenticação com o Senior-X e a linguagem Dart sem dependências diretas com o sdk do Flutter. Sendo assim, pode ser utilizado não só por aplicativos Flutter mas também com outros tipos de aplicações que utilizam o Dart.
Também oferecemos o package senior_platform_authentication_ui que já faz a integração com este projeto oferecendo as telas já prontas para serem consumidas por aplicativos Flutter e regras de negócio atrelados ao Senior-X.
Recomendamos utilizar este package de forma direta, apenas se o contexto do projeto que está a ser desenvolvido necessita de customizações em telas do frontend do Flutter que a lib senior_platform_authentication_ui não suporta.
Arquitetura #
A arquitetura foi baseada no Clean Architecture, entretanto com algumas adaptações para o escopo do projeto após análise técnica da equipe responsável pelo desenvolvimento incicial deste projeto. Este projeto provê apenas as camadas Data e Domain para serem utilizadas de forma independente.
Como utilizar #
Carregue o pacote senior_platform_authentication.
import 'package:senior_platform_authentication/senior_platform_authentication.dart';
copied to clipboard
Configuração do base URL (opcional) #
Os datasources remotos são configurados para utilizar um Singleton que contém a base url das requisições. Por padrão a base url utilizada é a do ambiente de produção do Senior X.
SeniorAuthentication.initialize();
copied to clipboard
Também podemos inicializar escolhendo o ambiente para o qual as requisições irão ser direcionadas:
SeniorAuthentication.initialize(
platformEnvironment: PlatformEnvironment.homolog,
);
copied to clipboard
Além disso, existem outras configurações disponíveis no método initialize, veja:
Parâmetro
Valor default
Descrição
platformEnvironment
PlatformEnvironment.production
Ambiente em que as requisições serão direcionadas.
enableLoginOffline
false
Habilita ou desabilita o login offline. Tem efeito somente quando utilizado em conjunto com o package senior-platform-authentication-ui.
automaticLogon
true
Define se o login deve ser feito de forma automática. Tem efeito somente quando utilizado em conjunto com o package senior-platform-authentication-ui e quando enableLoginOffline estiver habilitado.
includePhoto
false
Habilita ou desabilita a inclusão da photo do usuário nas chamadas de getUser.
baseUrl
''
Deve ser usado apenas quando platformEnvironment possuir o valor PlatformEnvironment.custom. Define a baseUrl de forma customizada.
baseAnonymousUrl
'' Deve ser usado apenas quando platformEnvironment possuir o valor PlatformEnvironment.custom. Define a baseAnonymousUrl de forma customizada.
frontendUrl
''
Deve ser usado apenas quando platformEnvironment possuir o valor PlatformEnvironment.custom. Define a frontendUrl de forma customizada.
enableLoginWithKey
false
Habilita ou desabilita o login com chave de aplicação. Tem efeito somente quando utilizado em conjunto com o package senior-platform-authentication-ui.
Chamando um caso de uso #
Os casos de uso podem ser chamados conforme o exemplo a seguir:
final credentials = UserLogin(
username: '{YOUR_USERNAME}',
password: '{YOUR_PASSWORD}',
scope: 'mobile',
);
final loginUsecase = LoginUsecase();
await loginUsecase(credentials);
copied to clipboard
ou de forma alternativa, podemos invocar direto o método call
await loginUsecase.call(credentials);
copied to clipboard
Observações #
Recomendamos utilizar apenas os casos de uso já implementados com as regras de negócio atreladas a autenticação do Senior X. Caso seja necessário alguma adaptação comunique seu contato de integração da Senior Sistemas.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.