/* global window */
// Mock data for the remaining screens.

const TEMPLATE = [
  // 7 days x 5 slots (Mon..Sun) — same shape as planning
  [{ name: 'Avena + plátano', rac: 2 }, { name: 'Lentejas con verdura', rac: 2, loose: [{ name: 'Pan', qty: 1, unit: 'ud' }] }, { name: 'Yogur + fruta', rac: 2 }, null, { name: 'Sopa miso', rac: 1 }],
  [{ name: 'Tostada aguacate', rac: 2 }, { name: 'Pasta al pesto', rac: 2 }, null, { name: 'Bocadillo pavo', rac: 1 }, { name: 'Arroz wok', rac: 1 }],
  [{ name: 'Smoothie verde', rac: 2 }, { name: 'Arroz con pollo', rac: 2 }, { name: 'Fruta + queso', rac: 2 }, { name: 'Crema verduras', rac: 1 }, { name: 'Pizza casera', rac: 1 }],
  [{ name: 'Café + tostada', rac: 2 }, { name: 'Garbanzos curry', rac: 2 }, null, null, { name: 'Wok tofu', rac: 1 }],
  [{ name: 'Tortitas avena', rac: 2 }, { name: 'Hamburguesa casera', rac: 2 }, { name: 'Hummus + crudités', rac: 2 }, { name: 'Quesadilla', rac: 1 }, { name: 'Pad thai', rac: 1 }],
  [null, { name: 'Paella mixta', rac: 4 }, { name: 'Café + bizcocho', rac: 2 }, { name: 'Tabla de quesos', rac: 2 }, null],
  [{ name: 'Brunch huevos', rac: 2 }, { name: 'Asado de domingo', rac: 4 }, null, { name: 'Sobras', rac: 2 }, { name: 'Sobras', rac: 2 }],
];

const ARTICLES = [
  { name: 'Lentejas pardinas', supermarket: 'Mercadona', unit: '500 g', envase: 1, stock: 0.5, min: 2, manualShop: false, variable: false, lastPrice: 1.45 },
  { name: 'Aceite oliva virgen extra', supermarket: 'Mercadona', unit: '1 L', envase: 1, stock: 1.0, min: 2, manualShop: true, variable: false, lastPrice: 7.85 },
  { name: 'Tomate triturado', supermarket: 'Lidl', unit: '400 g', envase: 1, stock: 4, min: 4, manualShop: false, variable: false, lastPrice: 0.79 },
  { name: 'Pasta penne', supermarket: 'Lidl', unit: '500 g', envase: 1, stock: 1, min: 2, manualShop: false, variable: false, lastPrice: 0.95 },
  { name: 'Tofu firme', supermarket: 'Lidl', unit: '250 g', envase: 1, stock: 0, min: 1, manualShop: false, variable: false, lastPrice: 1.65 },
  { name: 'Huevos camperos M', supermarket: 'Mercadona', unit: 'docena', envase: 1, stock: 0.5, min: 1, manualShop: false, variable: false, lastPrice: 2.95 },
  { name: 'Plátano canario', supermarket: 'Mercadona', unit: 'kg', envase: 1, stock: 1.4, min: 1, manualShop: false, variable: true, lastPrice: 1.85 },
  { name: 'Cebolla', supermarket: 'Mercadona', unit: 'kg', envase: 1, stock: 0.3, min: 1, manualShop: false, variable: true, lastPrice: 0.86 },
  { name: 'Atún en lata pack 3', supermarket: 'Carrefour', unit: 'pack', envase: 3, stock: 2, min: 3, manualShop: false, variable: false, lastPrice: 2.20 },
  { name: 'Yogur natural pack 4', supermarket: 'Mercadona', unit: 'pack', envase: 4, stock: 1, min: 2, manualShop: false, variable: false, lastPrice: 1.50 },
  { name: 'Salsa soja Kikkoman', supermarket: 'Carrefour', unit: '250 ml', envase: 1, stock: 1, min: 1, manualShop: false, variable: false, lastPrice: 3.45 },
  { name: 'Pan integral 500g', supermarket: 'Mercadona', unit: '500 g', envase: 1, stock: 2, min: 2, manualShop: true, variable: false, lastPrice: 1.65 },
];

const EXPENSES = [
  { date: '14 may', place: 'Mercadona', cat: 'Supermercado', payment: 'tarjeta', amount: 47.85, who: 'Rut', details: 'Compra semanal', ticket: true },
  { date: '14 may', place: 'Bar Pepe',  cat: 'Restauración', payment: 'efectivo', amount: 14.50, who: 'Patrick', details: 'Comida menú', ticket: false },
  { date: '13 may', place: 'Metro',     cat: 'Transporte', payment: 'tarjeta', amount: 12.80, who: 'Rut', details: 'Bono 10', ticket: false },
  { date: '12 may', place: 'Lidl',      cat: 'Supermercado', payment: 'tarjeta', amount: 23.40, who: 'Rut', details: 'Verduras + bebidas', ticket: true },
  { date: '11 may', place: 'Farmacia Centro', cat: 'Salud', payment: 'efectivo', amount: 18.20, who: 'Patrick', details: 'Ibuprofeno + tiritas', ticket: false },
  { date: '10 may', place: 'Mercadona', cat: 'Supermercado', payment: 'tarjeta', amount: 62.10, who: 'Rut', details: 'Compra grande', ticket: true },
  { date: '09 may', place: 'Cine Yelmo', cat: 'Ocio', payment: 'tarjeta', amount: 24.00, who: 'Patrick', details: '2 entradas', ticket: false },
  { date: '08 may', place: 'Bar Pepe',  cat: 'Restauración', payment: 'efectivo', amount: 32.50, who: 'Rut', details: 'Cena viernes', ticket: false },
  { date: '07 may', place: 'Endesa',    cat: 'Hogar', payment: 'tarjeta', amount: 78.40, who: 'Patrick', details: 'Factura luz abril', ticket: false },
  { date: '06 may', place: 'Carrefour', cat: 'Supermercado', payment: 'tarjeta', amount: 41.20, who: 'Rut', details: 'Limpieza + bazar', ticket: true },
];

const PENDING_TICKETS = [
  { id: 'q-031', supermarket: 'Mercadona', date: '14 may · 19:42', total: 47.85, items: 14, tone: 'mint' },
  { id: 'q-030', supermarket: 'Lidl', date: '12 may · 11:08', total: 23.40, items: 8, tone: 'yellow' },
];

const MONTHS = [
  { mes: 'Ene', total: 1180, topCat: 'Supermercado', topPlace: 'Mercadona', tickets: 18 },
  { mes: 'Feb', total: 1042, topCat: 'Hogar', topPlace: 'Endesa', tickets: 14 },
  { mes: 'Mar', total: 1356, topCat: 'Supermercado', topPlace: 'Mercadona', tickets: 22 },
  { mes: 'Abr', total: 1360, topCat: 'Supermercado', topPlace: 'Mercadona', tickets: 19 },
  { mes: 'May', total: 1248, topCat: 'Supermercado', topPlace: 'Mercadona', tickets: 23, current: true },
  { mes: 'Jun', total: 0, projected: true },
  { mes: 'Jul', total: 0, projected: true },
  { mes: 'Ago', total: 0, projected: true },
  { mes: 'Sep', total: 0, projected: true },
  { mes: 'Oct', total: 0, projected: true },
  { mes: 'Nov', total: 0, projected: true },
  { mes: 'Dic', total: 0, projected: true },
];

const ALIASES = [
  { id: 1, raw: 'L. PARDINAS 500G',          canonical: 'Lentejas pardinas',     market: 'Mercadona', status: 'canonical', confirms: 4 },
  { id: 2, raw: 'AOVE COOSUR 1L',            canonical: 'Aceite oliva virgen extra', market: 'Mercadona', status: 'canonical', confirms: 6 },
  { id: 3, raw: 'TOM.TRIT.HACENDADO',        canonical: 'Tomate triturado',      market: 'Mercadona', status: 'canonical', confirms: 5 },
  { id: 4, raw: 'PASTA PENNE 500',           canonical: 'Pasta penne',           market: 'Lidl',      status: 'proposed', confirms: 2 },
  { id: 5, raw: 'TOFU FIRME BIO',            canonical: 'Tofu firme',            market: 'Lidl',      status: 'proposed', confirms: 1 },
  { id: 6, raw: 'HUEVOS L CAMPERO',          canonical: 'Huevos camperos M',     market: 'Mercadona', status: 'proposed', confirms: 2, scope: 'mio' },
  { id: 7, raw: 'PLATANO CANARIO',           canonical: 'Plátano canario',       market: 'Mercadona', status: 'canonical', confirms: 8 },
  { id: 8, raw: 'YOG. NAT. PACK4',           canonical: 'Yogur natural pack 4',  market: 'Mercadona', status: 'canonical', confirms: 3 },
  { id: 9, raw: 'KIKKOMAN SOJA 250',         canonical: 'Salsa soja Kikkoman',   market: 'Carrefour', status: 'proposed', confirms: 0, scope: 'mio' },
  { id: 10, raw: 'PAN INT.500',              canonical: 'Pan integral 500g',     market: 'Mercadona', status: 'canonical', confirms: 7 },
];

const CATEGORIES = [
  { id: 1, name: 'Supermercado', icon: '⌗', color: '#3cffd0', budget: 550 },
  { id: 2, name: 'Restauración', icon: '◆', color: '#5200ff', budget: 220 },
  { id: 3, name: 'Transporte',   icon: '▶', color: '#f3e600', budget: 150 },
  { id: 4, name: 'Hogar',        icon: '◧', color: '#ff7ad9', budget: 280 },
  { id: 5, name: 'Ocio',         icon: '✦', color: '#ff6a1a', budget: 120 },
  { id: 6, name: 'Salud',        icon: '+', color: '#2864ff', budget: 80 },
];

const PLACES = [
  { id: 1, name: 'Mercadona',       cat: 'Supermercado', pay: 'tarjeta', visits: 9 },
  { id: 2, name: 'Lidl',            cat: 'Supermercado', pay: 'tarjeta', visits: 4 },
  { id: 3, name: 'Carrefour',       cat: 'Supermercado', pay: 'tarjeta', visits: 2 },
  { id: 4, name: 'Bar Pepe',        cat: 'Restauración', pay: 'efectivo', visits: 6 },
  { id: 5, name: 'Cine Yelmo',      cat: 'Ocio',         pay: 'tarjeta', visits: 1 },
  { id: 6, name: 'Farmacia Centro', cat: 'Salud',        pay: 'efectivo', visits: 2 },
  { id: 7, name: 'Endesa',          cat: 'Hogar',        pay: 'tarjeta', visits: 1 },
  { id: 8, name: 'Metro',           cat: 'Transporte',   pay: 'tarjeta', visits: 8 },
];

const UNIT_MAPS = [
  { id: 1, product: 'Aceite oliva virgen extra', ticketUnit: '1 L',     packQty: 1,   recipeUnit: '1 ml',    factor: 1000 },
  { id: 2, product: 'Lentejas pardinas',         ticketUnit: '500 g',   packQty: 500, recipeUnit: '1 g',     factor: 1 },
  { id: 3, product: 'Huevos camperos M',         ticketUnit: 'docena',  packQty: 12,  recipeUnit: '1 ud',    factor: 1 },
  { id: 4, product: 'Yogur natural pack 4',      ticketUnit: 'pack',    packQty: 4,   recipeUnit: '125 g',   factor: 125 },
  { id: 5, product: 'Salsa soja Kikkoman',       ticketUnit: '250 ml',  packQty: 250, recipeUnit: '1 ml',    factor: 1 },
  { id: 6, product: 'Plátano canario',           ticketUnit: 'kg',      packQty: 1,   recipeUnit: '1 g',     factor: 1000 },
  { id: 7, product: 'Pasta penne',               ticketUnit: '500 g',   packQty: 500, recipeUnit: '1 g',     factor: 1 },
];

const INVITES = [
  { id: 'inv-AB12CD', email: 'maria@example.com',   status: 'active',  created: '12 may 2026', expires: '19 may 2026' },
  { id: 'inv-7F8G9H', email: '—',                   status: 'active',  created: '08 may 2026', expires: '15 may 2026' },
  { id: 'inv-XK4L5M', email: 'pedro@example.com',   status: 'used',    created: '01 may 2026', expires: '08 may 2026', usedBy: 'pedro@example.com', usedAt: '03 may' },
  { id: 'inv-3R2S1T', email: 'lucia@example.com',   status: 'expired', created: '12 abr 2026', expires: '19 abr 2026' },
  { id: 'inv-NP9Q8U', email: '—',                   status: 'used',    created: '02 abr 2026', expires: '09 abr 2026', usedBy: 'jordi@example.com', usedAt: '04 abr' },
];

const GEMINI_USAGE = {
  monthIn: 142_300,
  monthOut: 38_900,
  callsMonth: 23,
  costMonth: 0.84,
  households: 1,
};

Object.assign(window.RC_DATA, {
  TEMPLATE, ARTICLES, EXPENSES, PENDING_TICKETS, MONTHS,
  ALIASES, CATEGORIES, PLACES, UNIT_MAPS, INVITES, GEMINI_USAGE,
});
