{t.stats}
{statCards.map(s => (
))}
{s.icon}
{s.value}
{s.label}
{lang==='pt'?'Últimas Encomendas':'Recent Orders'}
{orders.length === 0 &&{lang==='pt'?'Sem encomendas ainda.':'No orders yet.'}
}
{[...orders].reverse().slice(0,5).map(o => (
#{o.id} — {o.userName}
{t.statuses[o.status]}
{o.total.toFixed(2)}€
))}
{t.products}
| {h} | ))}|||||
|---|---|---|---|---|---|
| {p.name} | {p.category} | {parseFloat(p.price).toFixed(2)}€ | {p.featured ? '★' : '☆'} |
|
{t.orders}
{orders.length === 0 ? (
{lang==='pt'?'Sem encomendas.':'No orders yet.'}
) : (
{[...orders].reverse().map(o => (
))}
)}
Encomenda #{o.id}
{new Date(o.createdAt).toLocaleString('pt-PT')}
{[
[lang==='pt'?'Cliente':'Customer', `${o.userName}\n${o.phone}`],
[lang==='pt'?'Morada':'Address', o.address],
['Total', `${o.total.toFixed(2)}€ · ${o.payMethod}`],
].map(([k,v]) => (
))}
{k}
{v}
{o.items.map(i => (
{i.name} ×{i.qty}
))}
{t.users}
| {h} | ))}||||
|---|---|---|---|---|
| {u.id} | {u.name} | {u.email} | {u.role} | {u.createdAt} |
{t.cats}
| ID | {lang==='pt'?'Nome':'Name'} | |
|---|---|---|
| {c.id} | {c.label} |
|
{editCat ? (lang==='pt'?'Editar':'Edit') : (lang==='pt'?'Nova Categoria':'New Category')}
editCat?setEditCat(c=>({...c,id:e.target.value})):setNewCat(c=>({...c,id:e.target.value}))} />
editCat?setEditCat(c=>({...c,label:e.target.value})):setNewCat(c=>({...c,label:e.target.value}))} />