Files
plantillas-proyectos/frontend/src/lib/components/dashboard/ports/columns.ts
2026-02-09 16:04:28 -06:00

49 lines
1.5 KiB
TypeScript

import type { Port } from '$lib/api/dashboard/a76/general_catalogs/ports';
import type { ColumnDef } from '@tanstack/table-core';
import { renderComponent } from '$lib/components/ui/data-table';
import DataTableActions from './data-table-actions.svelte';
export function createColumns(onSuccess?: () => void): ColumnDef<Port>[] {
return [
{
accessorKey: 'port_code',
header: 'Código Puerto',
},
{
accessorKey: 'description',
header: 'Descripción',
cell: ({ row }) => row.original.description || '-'
},
{
accessorKey: 'location_code',
header: 'Código Ubicación',
},
{
accessorKey: 'location_description',
header: 'Ubicación',
cell: ({ row }) => row.original.location_description || '-'
},
{
accessorKey: 'port_type',
header: 'Tipo',
cell: ({ row }) => {
const type = row.original.port_type;
if (type === 'ENTRY') return 'Entrada';
if (type === 'EXIT') return 'Salida';
if (type === 'BOTH') return 'Ambos';
return type;
}
},
{
id: 'actions',
header: 'Acciones',
cell: ({ row }) => {
return renderComponent(DataTableActions, {
item: row.original,
onSuccess
});
}
}
];
}