# F-116 — Traducir categorías legacy a Español (Title Case) ## Cambios 1. **Tabla de traducciones** en `src/modules/categories/legacy/legacy-catalog.ts`: - Map de nombre en inglés → nombre en español Title Case. - Cubre las 39 categorías reales (no marcas). - Cambios: HERBALIST → Herbolaria, FOOD → Alimentación, COSMETICS → Cosmética, DIET AND NUTRITION → Dietética y Nutrición, NUTS & SEEDS → Frutos Secos y Semillas, BREAD & PASTRIES → Pan y Bollería, LEGUMES → Legumbres, FLOUR & CEREALS → Harinas y Cereales, PASTA & RICE → Pasta y Arroz, CREAMS & JAMS → Cremas y Mermeladas, FRUTAS Y VERDURAS (ya está en español), SUGAR & SWEETENERS → Azúcar y Endulzantes, BEVERAGES → Bebidas, OIL AND VINEGAR → Aceite y Vinagre, RAW FOOD → Comida Cruda, HIERBAS MEDICINALES (ya está), SUPLEMENTS → Suplementos, OILS & EXTRACTS → Aceites y Extractos, FACIAL → Facial, CORPORAL → Corporal, ASEO PERSONAL → Aseo Personal, HOME → Hogar, MACROBIOTIC → Macrobiótica, SNACKS → Snacks, BOOKS → Libros, FRESH PRODUCTS → Productos Frescos, WINE → Vino, BEER → Cerveza, VEGETAL MILKS → Bebidas Vegetales, JUICES → Zumos, SODAS → Refrescos, CHILDREN → Niños, BABYS & KIDS → Bebés y Niños, TEA & INFUSIONS → Té e Infusiones, SPICE & CONDIMENTS → Especias y Condimentos, CHOCOLATE & SWEETS → Chocolate y Dulces, CLEANING → Limpieza, PROVEEDORES (ya está), GRANOLA → Granola. 2. **Slug con acento**: `slugify` actualmente quita los diacríticos. Para F-116, los slugs de categorías en español deben preservar lo fundamental. Decisión: seguir quitando los diacríticos (consistente con el resto del catálogo: `alimentacion`, `cosmetica-e-higiene`). Alternativa: dejar los acentos y relajar la regex. Nos quedamos con la primera opción por consistencia. 3. **Seed script**: añade un comando `seed --translate` (o ampliar el actual) que traduce los nombres en su lugar. Idempotente: si el slug existe y el name ya está en español, skip. 4. **Tests**: validación de la tabla de traducción (cubrir todas las entradas), normalización Title Case. ## Tests - `legacy-catalog-translations.test.ts`: la tabla tiene la misma cantidad de entradas que `LEGACY_ENTRIES` con kind='category' (excepto los que ya están en español). - Validación de Title Case: la primera letra de cada palabra en mayúscula.