Files
mercadodevida/work/artifacts/F-116/architect.md
2026-08-21 14:23:17 +02:00

2.3 KiB

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.