UNPKG

es-grid-template

Version:

es-grid-template

28 lines (27 loc) 794 B
import { createColumnHelper } from '@tanstack/react-table'; const columnHelper = createColumnHelper(); export function convertColumns(columns) { return columns.map(col => { if (col.columns) { // Group column return columnHelper.group({ ...col, columns: convertColumns(col.columns) // đệ quy }); } else { // Accessor column let accessor; // Ưu tiên accessorKey nếu có, nếu không thì dùng hàm row => row[col.id] if (col.accessorKey) { accessor = col.accessorKey; } else if (col.id) { accessor = row => row[col.id]; } else { throw new Error('Column không có accessorKey hoặc id'); } return columnHelper.accessor(accessor, { ...col }); } }); }