Skip to main content

Guía de Migración

Cómo migrar tu aplicación entre versiones de Camarauth SDK.

Migración de v2 a v3

Resumen de Cambios

TypeScript

Soporte completo de TypeScript con tipos incluidos

Arquitectura

Arquitectura modular con separación de responsabilidades

Seguridad

Mejor seguridad con rate limiting y validación de webhooks

Testing

Tests exhaustivos incluidos

Paso 1: Actualizar Dependencias

# Desinstalar versión anterior
npm uninstall camarauth-lib

# Instalar nueva versión
npm install camarauth-sdk@^3.0.0

Paso 2: Actualizar Imports

const { CamarauthClient } = require('camarauth-lib');

Paso 3: Migrar Configuración del Backend

const backend = new CamarauthBackend({
  dbConnection: pool, // Conexión directa
  jwtSecret: process.env.JWT_SECRET
});

Paso 4: Migrar Hooks de React

const { pin, status } = useCamarauth({
  apiUrl: 'http://localhost:3001'
});

Paso 5: Manejo de Errores

try {
  await backend.registerPin(pin);
} catch (error) {
  console.error(error.message);
}

Paso 6: Modelo de Usuario

const user = {
  id: 123,
  first_name: 'Juan',
  phone: '+34600123456'
};

Paso 7: Webhooks

app.post('/webhook', webhookHandler);

Cambios Breaking

  • dbConnection: Usar DatabaseAdapter
  • Callbacks antiguos: Usar Promises/async-await
  • Soporte Node.js < 18
  • Nombres de métodos: camelCase consistente
  • Estructura de respuestas: success: boolean siempre presente
  • Códigos de error: Estandarizados
  • TypeScript obligatorio para tipos
  • Rate limiting integrado
  • Logs estructurados
  • CI/CD pipeline

Checklist de Migración

  • Actualizar package.json
  • Migrar imports
  • Actualizar configuración backend
  • Migrar hooks React
  • Actualizar manejo de errores
  • Migrar modelo de usuario
  • Actualizar webhooks
  • Agregar tests
  • Probar en desarrollo
  • Desplegar a staging
  • Desplegar a producción

Obtener Ayuda

Ejemplos de Migración

Puedes apoyarte en estas guías para migrar por bloques: