feat: version 2.8.1 -- catalogo de logos de marca en Contraseñas (simple-icons, CC0)
Amplia el selector de icono de una credencial con ~70 logos reales de marcas conocidas (Google, GitHub, Cloudflare, cPanel, MikroTik, WordPress, etc.), empaquetados localmente desde el paquete simple-icons (dominio publico) y tree-shakeados por Vite. Se mantiene el criterio de privacidad ya establecido: ninguna consulta externa de favicon por entrada. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -11,11 +11,27 @@ import { sendMail } from '../../utils/mailer.js';
|
||||
const PIN_RE = /^\d{4}$/;
|
||||
const VAULT_TOKEN_EXPIRES = '30m';
|
||||
|
||||
// Catalogo fijo (debe coincidir con el del frontend, ContrasenasPage.jsx#ICONS) -- nunca se
|
||||
// acepta un valor arbitrario, para no guardar basura ni abrir una via de inyeccion rara.
|
||||
// Catalogo fijo (debe coincidir con el del frontend: ContrasenasPage.jsx#ICONS y
|
||||
// frontend/src/data/brandIcons.js#BRAND_ICONS) -- nunca se acepta un valor arbitrario, para no
|
||||
// guardar basura ni abrir una via de inyeccion rara.
|
||||
const ICON_KEYS = new Set([
|
||||
'mail', 'globe', 'server', 'database', 'cloud', 'shield', 'lock', 'wifi',
|
||||
'card', 'building', 'printer', 'phone', 'key', 'disk', 'router', 'user',
|
||||
'b_google', 'b_gmail', 'b_googledrive', 'b_googlecloud', 'b_protonmail', 'b_zoho',
|
||||
'b_github', 'b_gitlab', 'b_digitalocean', 'b_cloudflare', 'b_namecheap', 'b_godaddy',
|
||||
'b_ovh', 'b_vultr', 'b_netlify', 'b_vercel', 'b_cpanel', 'b_plesk', 'b_webmin',
|
||||
'b_nginx', 'b_apache', 'b_mysql', 'b_mariadb', 'b_postgresql', 'b_docker',
|
||||
'b_cisco', 'b_fortinet', 'b_mikrotik', 'b_ubiquiti', 'b_tplink', 'b_openvpn', 'b_wireguard',
|
||||
'b_pfsense', 'b_opnsense', 'b_qnap', 'b_synology', 'b_nordvpn', 'b_bitdefender',
|
||||
'b_trendmicro', 'b_avast', 'b_kaspersky',
|
||||
'b_whatsapp', 'b_telegram', 'b_zoom', 'b_discord', 'b_jitsi',
|
||||
'b_facebook', 'b_instagram', 'b_x',
|
||||
'b_paypal', 'b_stripe',
|
||||
'b_teamviewer', 'b_anydesk',
|
||||
'b_dropbox', 'b_backblaze', 'b_mega', 'b_veeam', 'b_nextcloud',
|
||||
'b_bitwarden', 'b_lastpass',
|
||||
'b_linux', 'b_ubuntu', 'b_apple', 'b_raspberrypi',
|
||||
'b_wordpress', 'b_mailchimp', 'b_firebase',
|
||||
]);
|
||||
function sanitizeIconKey(key) {
|
||||
return ICON_KEYS.has(key) ? key : null;
|
||||
|
||||
Reference in New Issue
Block a user