#!/bin/bash

# Script de ayuda para Classic Add-ons Archive
# Muestra comandos disponibles

cat << 'EOF'
╔════════════════════════════════════════════════════════════════╗
║         Classic Add-ons Archive - Comandos Disponibles        ║
╚════════════════════════════════════════════════════════════════╝

📦 CONSTRUCCIÓN (BUILD)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ./build.sh                    Construir paquetes sin firmar
  ./build.sh --list             Construir y listar contenido
  npm run build                 Construir con npm

🔐 FIRMA (SIGNING)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ./scripts/generate-keys.sh    Generar claves de firma
  ./build.sh --sign             Firmar ambos navegadores
  ./build.sh --sign-firefox     Firmar solo Firefox
  ./build.sh --sign-chrome      Firmar solo Chrome
  
  npm run keys:generate         Generar claves (npm)
  npm run build:sign            Construir y firmar (npm)
  npm run build:sign-firefox    Construir y firmar Firefox
  npm run build:sign-chrome     Construir y firmar Chrome

🧪 DESARROLLO
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  npm run lint                  Validar manifest y código
  npm run start:firefox         Probar en Firefox
  npm run start:chrome          Probar en Chrome
  npm run clean                 Limpiar archivos de build

📚 DOCUMENTACIÓN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  INSTALL.md                    Guía de instalación
  SIGNING.md                    Guía de firma completa
  MIGRATION.md                  Migración desde v2
  README-v3.md                  Documentación completa
  TROUBLESHOOTING.md            Solución de problemas

📁 ARCHIVOS GENERADOS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  dist/                         Paquetes construidos
    ├── ca-archive-*.xpi        Firefox sin firmar
    ├── ca-archive-*-chrome.zip Chrome sin firmar
    ├── ca-archive-*-chrome.crx Chrome firmado
    └── *-sign.log              Logs de firma

  private-keys/                 Claves privadas (NO SUBIR A GIT)
    ├── chrome-extension.pem    Clave privada Chrome
    ├── chrome-extension-id.txt Extension ID de Chrome
    └── firefox-amo-*.json      Credenciales AMO

🔍 EJEMPLOS DE USO
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  # Desarrollo rápido
  npm install && npm run start:firefox

  # Primera vez con firma
  npm install                            # Instala web-ext localmente
  ./scripts/generate-keys.sh
  # Editar: private-keys/firefox-amo-credentials.json
  ./build.sh --sign

  # Build de producción
  npm run lint && ./build.sh --sign

  # Limpiar y reconstruir
  npm run clean && ./build.sh

⚠️  SEGURIDAD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ¡NUNCA SUBAS LAS CLAVES PRIVADAS A GIT!
  
  La carpeta private-keys/ está en .gitignore
  Verifica con: git status private-keys/
  
  Haz backup seguro de:
    - private-keys/chrome-extension.pem
    - private-keys/firefox-amo-credentials.json

📖 MÁS AYUDA
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  GitHub: https://github.com/JustOff/ca-archive
  Issues: https://github.com/JustOff/ca-archive/issues

EOF
