DataTableEmpezar
Labels e idiomas
Textos en español por defecto y puente con next-intl para las apps bilingües.
Todos los textos de la tabla (toolbar, paginación, filtros, arias, toasts) salen de un contexto con defaults en español.
- App solo en español (FesaStore): no configures nada.
- App bilingüe (fesa.com.pa, Fesa ID): monta el bridge una vez, dentro del provider de i18n.
"use client";
import { useMemo } from "react";
import { useTranslations } from "next-intl";
import { DataTableLabelsProvider, type DataTableLabelsOverride } from "@fesa/components/datatable";
export function DataTableLabelsBridge({ children }: { children: React.ReactNode }) {
const t = useTranslations("DataTable");
const labels = useMemo<DataTableLabelsOverride>(() => ({
table: { empty: t("empty") },
toolbar: {
search: t("toolbar.search"),
columns: t("toolbar.columns"),
export: t("toolbar.export"),
// …el resto de claves del namespace DataTable
},
pagination: {
showing: (start, end, total) => t("pagination.showing", { start, end, total }),
rowsPerPage: t("pagination.rowsPerPage"),
},
}), [t]);
return <DataTableLabelsProvider labels={labels}>{children}</DataTableLabelsProvider>;
}El merge es parcial por grupo: lo que no pases conserva el default en español. La lista completa de claves está en la referencia de labels.