https://dev.kronoz.win/r/marzneshin.git
| 1 |
3b7feef |
Mrdn |
2y ago |
|
| 2 |
3b7feef |
Mrdn |
2y ago |
import { ColumnDef } from "@tanstack/react-table" |
| 3 |
d636f3f |
Dawsh |
2y ago |
import { InboundType } from "@marzneshin/modules/inbounds" |
| 4 |
65bbe9d |
Mardin |
2y ago |
import { |
| 5 |
65bbe9d |
Mardin |
2y ago |
DataTableColumnHeader |
| 6 |
7389ad0 |
Mardin |
2y ago |
} from "@marzneshin/libs/entity-table" |
| 7 |
3b7feef |
Mrdn |
2y ago |
import i18n from "@marzneshin/features/i18n" |
| 8 |
7389ad0 |
Mardin |
2y ago |
import { Badge, Checkbox } from "@marzneshin/common/components" |
| 9 |
3b7feef |
Mrdn |
2y ago |
|
| 10 |
3b7feef |
Mrdn |
2y ago |
export const columns: ColumnDef<InboundType>[] = [ |
| 11 |
3b7feef |
Mrdn |
2y ago |
{ |
| 12 |
3b7feef |
Mrdn |
2y ago |
id: "select", |
| 13 |
3b7feef |
Mrdn |
2y ago |
header: ({ table }) => ( |
| 14 |
3b7feef |
Mrdn |
2y ago |
<Checkbox |
| 15 |
3b7feef |
Mrdn |
2y ago |
checked={ |
| 16 |
3b7feef |
Mrdn |
2y ago |
table.getIsAllPageRowsSelected() || |
| 17 |
3b7feef |
Mrdn |
2y ago |
(table.getIsSomePageRowsSelected() && "indeterminate") |
| 18 |
3b7feef |
Mrdn |
2y ago |
} |
| 19 |
3b7feef |
Mrdn |
2y ago |
onCheckedChange={(value) => { |
| 20 |
3b7feef |
Mrdn |
2y ago |
table.toggleAllPageRowsSelected(!!value) |
| 21 |
3b7feef |
Mrdn |
2y ago |
}} |
| 22 |
3b7feef |
Mrdn |
2y ago |
aria-label="Select all" |
| 23 |
3b7feef |
Mrdn |
2y ago |
/> |
| 24 |
3b7feef |
Mrdn |
2y ago |
), |
| 25 |
3b7feef |
Mrdn |
2y ago |
cell: ({ row }) => ( |
| 26 |
3b7feef |
Mrdn |
2y ago |
<Checkbox |
| 27 |
3b7feef |
Mrdn |
2y ago |
checked={row.getIsSelected()} |
| 28 |
3b7feef |
Mrdn |
2y ago |
onCheckedChange={(value) => row.toggleSelected(!!value)} |
| 29 |
3b7feef |
Mrdn |
2y ago |
aria-label="Select row" |
| 30 |
3b7feef |
Mrdn |
2y ago |
/> |
| 31 |
3b7feef |
Mrdn |
2y ago |
), |
| 32 |
3b7feef |
Mrdn |
2y ago |
enableSorting: false, |
| 33 |
3b7feef |
Mrdn |
2y ago |
enableHiding: false, |
| 34 |
3b7feef |
Mrdn |
2y ago |
}, |
| 35 |
3b7feef |
Mrdn |
2y ago |
{ |
| 36 |
3b7feef |
Mrdn |
2y ago |
accessorKey: "tag", |
| 37 |
3b7feef |
Mrdn |
2y ago |
header: ({ column }) => <DataTableColumnHeader title={i18n.t('tag')} column={column} />, |
| 38 |
3b7feef |
Mrdn |
2y ago |
}, |
| 39 |
3b7feef |
Mrdn |
2y ago |
{ |
| 40 |
3b7feef |
Mrdn |
2y ago |
accessorKey: 'protocol', |
| 41 |
3b7feef |
Mrdn |
2y ago |
header: ({ column }) => <DataTableColumnHeader title={i18n.t('protocol')} column={column} />, |
| 42 |
3b7feef |
Mrdn |
2y ago |
cell: ({ row }) => ( |
| 43 |
3b7feef |
Mrdn |
2y ago |
<Badge className="py-1 px-2"> {row.original.protocol} </Badge> |
| 44 |
3b7feef |
Mrdn |
2y ago |
) |
| 45 |
3b7feef |
Mrdn |
2y ago |
}, |
| 46 |
3b7feef |
Mrdn |
2y ago |
{ |
| 47 |
3b7feef |
Mrdn |
2y ago |
accessorKey: 'node', |
| 48 |
3b7feef |
Mrdn |
2y ago |
header: ({ column }) => <DataTableColumnHeader title={i18n.t('nodes')} column={column} />, |
| 49 |
3b7feef |
Mrdn |
2y ago |
cell: ({ row }) => ( |
| 50 |
3b7feef |
Mrdn |
2y ago |
<Badge className="py-1 px-2"> {row.original.node.name} </Badge> |
| 51 |
3b7feef |
Mrdn |
2y ago |
) |
| 52 |
3b7feef |
Mrdn |
2y ago |
} |
| 53 |
3b7feef |
Mrdn |
2y ago |
]; |