npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

positiva-aws-users-plugin

v1.0.1

Published

Implementa a lógica para autenticar usuários de uma aplicação e componentes como tela de login

Downloads

2

Readme

positiva-aws-users-plugin

Gerencia assuntos relacionados a usuários para o frontend. Trazendo componentes e métodos para comunicação com o backend.

Tabela de conteúdo

  1. Motivação
  2. Dependências
  3. Como importar
  4. Parâmetros
  5. Componentes
  6. Como usar
  7. Autor
  8. Licença

Motivação

Toda aplicação da @Positiva terá um controle de acesso por usuários. A automatização através de convenções implementadas por esse plugin, tem o intuito de acelerar o desenvolvimento de novas soluções.

Dependências

npm i aws-amplify

Ter configurado o AWS Amplify, como mostra a estrutura a seguir

Amplify.configure({
	Auth: {
		mandatorySignIn: true,
		region: REGION,
		userPoolId: USER_POOL_ID,
		identityPoolId: IDENTITY_POOL_ID,
		userPoolWebClientId: APP_CLIENT_ID
	},
	API: {
		endpoints: [
			{
				name: API_ENDPOINT_NAME,
				endpoint: API_GATEWAY_URL,
				region: REGION
			}
		]
	}	
});

Como importar

import PositivaAWSUsers from "positiva-aws-users-plugin";

Vue.use(PositivaAWSUsers);

Parâmetros

apiEndpointName

Nome do alias de um endpoint configurado no AWS Amplify.

Componentes

<positiva-user-login><positiva-user-login/>

<positiva-user-confirm><positiva-user-confirm/>

<positiva-user-forget><positiva-user-forget/>

<positiva-user-update><positiva-user-update/>

Como usar

O plugin é utilizado através da seguinte estrutura

this.$users.<attr/method>

data

Ao fazer login as informações do usuário logado estará armazenada no seguinte atributo

this.$users.data.me

Também, como existe um usuário do tipo administrador então ele poderá editar e vizulizar algumas informações de outros usuários. Essas informações estarão armazenadas no seguinte atributo, após ter feito login.

this.$users.data.all

login

/*
Realiza login de um usuário na aplicação

@username -> um e-mail válido
@password -> uma senha que possua no mínimo 8 caracteres
*/
async function login(username, password)

// por exemplo
await this.$users.login("[email protected]", "senha-secreta");

isLogged

/*
Verifica se tem algum usuário logado na sessão

@return -> *true* se sim, *false* caso contrário
*/
async function isLogged()

// por exemplo
const algumUsuarioLogado = await this.$users.isLogged();

lougout

/*
Faz logout de um sessão

@return -> null
*/
async function logout()

// por exemplo
await this.$users.lougout();

recovery

/*
Inicia o processo de recuperar senha de um usuário. A chamada desse método resultará em um e-mail sendo enviado com um código de verificação.

@username -> e-mail da conta a ter sua senha resgatada
@return -> null
*/
async function recovery(username)

// por exemplo
await this.$users.recovery("[email protected]");

create

/*
Cria um novo usuário

@username -> um e-mail válido
@password -> uma senha que possua no mínimo 8 caracteres
@content -> campos que contém informações sobre aquele usuário
*/
async function create(username, password, content)

// por exemplo
this.$users.create(
	"[email protected]",
	'senha-secreta',
	{
		role: 'Administrador',
		phone: '+55 45 99999 9999'
	}
);

remove

/*
Remove um usuário existente

@username -> um e-mail válido e cadastrado
*/
async function remove(username)

// por exemplo
this.$users.remove("[email protected]")

update

/*
Atualiza informações de um usuário existente

@username -> um e-mail válido e cadastrado
@content -> novas informações sobre aquele usuário. Importante passar todos os campos que deseja manter, mesmo que seu valor não foi atualizado
*/
async function update(username, content)

// por exemplo
this.$users.update("[email protected]", {
	role: "Administrador",
	phone: "+55 45 99899 9999"
});

Autor

Renan Tashiro ([email protected])

Licença

AGPL-3.0