gitscope
← marzneshin / v0.3.0-alpha10 / dashboard/src/components/entity-table/tests/columns.mock.tsx
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/components/entity-table/tests/columns.mock.tsx · TypeScript
Blame Raw
 1
 2import { ColumnDef } from "@tanstack/react-table"
 3import { DataTableColumnHeader } from "@marzneshin/components/data-table/column-header"
 4import { DataTableActionsCell } from "@marzneshin/components"
 5import { MockDataType } from "./data.mock";
 6
 7interface ColumnAction {
 8    onDelete: (host: MockDataType) => void;
 9    onOpen: (host: MockDataType) => void;
10    onEdit: (host: MockDataType) => void;
11}
12
13export const mockColumns = (actions: ColumnAction): ColumnDef<MockDataType>[] => ([
14    {
15        accessorKey: "name",
16        header: ({ column }) => <DataTableColumnHeader title="Name" column={column} />,
17    },
18    {
19        accessorKey: "operatingSystem",
20        header: ({ column }) => <DataTableColumnHeader title="Operating System" column={column} />,
21    },
22    {
23        accessorKey: "proxyProtocol",
24        header: ({ column }) => <DataTableColumnHeader title="Proxy Protocol" column={column} />,
25    },
26    {
27        id: "actions",
28        cell: ({ row }) => <DataTableActionsCell {...actions} row={row} />
29    },
30]);