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 🙏

© 2026 – Pkg Stats / Ryan Hefner

react-native-wilbby-auth

v1.0.10

Published

Este es un paquete interno para iniciar sesión en las aplicaciones de Wilbby Tech.

Readme

react-native-wilbby-auth

react-native-wilbby-auth es un módulo para React Native que facilita la integración de autenticación OAuth2 utilizando roles predefinidos. Permite autenticar usuarios con facilidad a través de un flujo de autorización estándar y manejar parámetros personalizados para la configuración.

Instalación

Para instalar react-native-wilbby-auth en tu proyecto React Native, ejecuta el siguiente comando:

npm install react-native-wilbby-auth

iOS

```bash
cd ios && pod install


iOS pasos adicionales

En el proyecto Xcode tuapp/AppDelegate.mm

Añade

#import <React/RCTLinkingManager.h>
#import "RNAppAuthAuthorizationFlowManager.h"
#import <AuthenticationServices/AuthenticationServices.h>
#import <SafariServices/SafariServices.h>


- (BOOL) application: (UIApplication *) application
continueUserActivity: (nonnull NSUserActivity *)userActivity
  restorationHandler: (nonnull void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler
{
  if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
    if (self.authorizationFlowManagerDelegate) {
      BOOL resumableAuth = [self.authorizationFlowManagerDelegate resumeExternalUserAgentFlowWithURL:userActivity.webpageURL];
      if (resumableAuth) {
        return YES;
      }
    }
  }
  return [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];
}


En el archivo tuapp/AppDelegate.h

#import <RCTAppDelegate.h>
#import <UIKit/UIKit.h>
#import <React/RCTLinkingManager.h>
#import "RNAppAuthAuthorizationFlowManager.h"

@interface AppDelegate : RCTAppDelegate <RNAppAuthAuthorizationFlowManager>

@property(nonatomic, weak) id<RNAppAuthAuthorizationFlowManagerDelegate> authorizationFlowManagerDelegate;

@end


En el target princial de tu app has clic en la pestaña Info de Xcode y en URL Types / URL Scheme añade tu dominio


Recuerda que este módulo depende de react-native-app-auth para realizar la autenticación. Asegúrate de seguir la guía de instalación de react-native-app-auth para configurar la autenticación en iOS y Android.

Tipos

Roles

Este enum define los roles disponibles para los usuarios en la aplicación.

export declare enum RolesEnumType {
    ADMIN = "Admin",
    USER = "User",
    RIDER = "Rider",
    STORE = "Store",
    SUPERADMIN = "SuperAdmin"
}

SUPERADMIN: Administrador con acceso total.
ADMIN: Administrador con acceso limitado.
USER: Usuario regular.
RIDER: Usuario tipo conductor.
STORE: Usuario tipo tienda.

ServiceConfiguration
Configuración de los endpoints para la autenticación.

interface ServiceConfiguration {
  authorizationEndpoint: string;
  tokenEndpoint: string;
  revocationEndpoint: string;
}

authorizationEndpoint: Endpoint para autorizar la aplicación.
tokenEndpoint: Endpoint para obtener el token de acceso.
revocationEndpoint: Endpoint para revocar el token.
AdditionalParameters
Parámetros adicionales específicos de la plataforma.

interface AdditionalParameters {
  platform: string;
  language: string;
  data: any;
}

platform: Plataforma en la que se ejecuta la app (por ejemplo, "iOS", "Android").
language: Idioma preferido del usuario.
data: Datos adicionales que puedan ser necesarios para la autenticación.

WilbbyAuthProviderType

Interfaz que agrupa toda la configuración necesaria para autenticar al usuario.


export interface WilbbyAuthProviderType {
  serviceConfiguration: ServiceConfiguration;
  additionalParameters: AdditionalParameters;
  clientId: string;
  redirectUrl: string;
  scopes: Roles[];
}
serviceConfiguration: Configuración de los servicios de autenticación.

additionalParameters: Parámetros adicionales como plataforma e idioma.

clientId: El ID del cliente para la autenticación.

redirectUrl: URL de redirección después de la autenticación.

scopes: Los roles que la aplicación solicita para el acceso.

WilbbyAuth

Clase principal para gestionar la autenticación.

Método authenticate

Este método maneja el flujo de autenticación utilizando los parámetros proporcionados.

Parámetros:

config: Objeto de tipo WilbbyAuthProviderType con la configuración de la autenticación.

Retorna:

Una promesa que se resuelve con el resultado de la autenticación (AuthorizeResult).

Ejemplo de uso:

import {WilbbyAuth, WilbbyAuthProviderType, RolesEnumType } from 'react-native-wilbby-auth';

const config = {
  serviceConfiguration: {
    authorizationEndpoint: 'https://auth.example.com/oauth/authorize',
    tokenEndpoint: 'https://auth.example.com/oauth/token',
    revocationEndpoint: 'https://auth.example.com/oauth/revoke',
  },
  additionalParameters: {
    platform: 'iOS',
    language: 'en',
    data: {},
  },
  clientId: 'your-client-id',
  redirectUrl: 'com.example.app://oauth/callback',
  scopes: [Roles.USER, Roles.RIDER],
};

try {
  const result = await WilbbyAuth.authenticate(config);
  console.log('Authentication successful:', result);
} catch (error) {
  console.error('Authentication failed:', error);
}

Requisitos

Este módulo depende de la biblioteca react-native-app-auth para manejar la autenticación. Asegúrate de seguir la guía de instalación de react-native-app-auth para configurar correctamente la plataforma en iOS y Android.

Contribuciones

Si deseas contribuir a react-native-wilbby-auth, haz un fork del repositorio y crea un pull request con tus cambios. Asegúrate de seguir las guías de estilo y de probar cualquier nueva funcionalidad antes de enviar el PR.

Licencia
Este paquete está bajo la licencia MIT. Consulta el archivo LICENSE para más detalles.