gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/features/users/tables/services/columns.tsx · v0.3.0-alpha4
Source
1 857e289 Mrdn 2y ago import { ColumnDef } from "@tanstack/react-table"
2 857e289 Mrdn 2y ago import { DataTableColumnHeader } from "@marzneshin/components/data-table/column-header"
3 857e289 Mrdn 2y ago import i18n from "@marzneshin/features/i18n"
4 857e289 Mrdn 2y ago import { Checkbox } from "@marzneshin/components"
5 857e289 Mrdn 2y ago import { ServiceType } from "@marzneshin/features/services"
6 857e289 Mrdn 2y ago
7 857e289 Mrdn 2y ago export const columns: ColumnDef<ServiceType>[] = [
8 857e289 Mrdn 2y ago {
9 857e289 Mrdn 2y ago id: "select",
10 857e289 Mrdn 2y ago header: ({ table }) => (
11 857e289 Mrdn 2y ago <Checkbox
12 857e289 Mrdn 2y ago checked={
13 857e289 Mrdn 2y ago table.getIsAllPageRowsSelected() ||
14 857e289 Mrdn 2y ago (table.getIsSomePageRowsSelected() && "indeterminate")
15 857e289 Mrdn 2y ago }
16 857e289 Mrdn 2y ago onCheckedChange={(value) => {
17 857e289 Mrdn 2y ago table.toggleAllPageRowsSelected(!!value)
18 857e289 Mrdn 2y ago }}
19 857e289 Mrdn 2y ago aria-label="Select all"
20 857e289 Mrdn 2y ago />
21 857e289 Mrdn 2y ago ),
22 857e289 Mrdn 2y ago cell: ({ row }) => (
23 857e289 Mrdn 2y ago <Checkbox
24 857e289 Mrdn 2y ago checked={row.getIsSelected()}
25 857e289 Mrdn 2y ago onCheckedChange={(value) => row.toggleSelected(!!value)}
26 857e289 Mrdn 2y ago aria-label="Select row"
27 857e289 Mrdn 2y ago />
28 857e289 Mrdn 2y ago ),
29 857e289 Mrdn 2y ago enableSorting: false,
30 857e289 Mrdn 2y ago enableHiding: false,
31 857e289 Mrdn 2y ago },
32 857e289 Mrdn 2y ago {
33 857e289 Mrdn 2y ago accessorKey: "name",
34 857e289 Mrdn 2y ago header: ({ column }) => <DataTableColumnHeader title={i18n.t('name')} column={column} />,
35 857e289 Mrdn 2y ago },
36 857e289 Mrdn 2y ago {
37 857e289 Mrdn 2y ago accessorKey: 'users',
38 857e289 Mrdn 2y ago header: ({ column }) => <DataTableColumnHeader title={i18n.t('Users')} column={column} />,
39 857e289 Mrdn 2y ago cell: ({ row }) => row.original.users.length
40 857e289 Mrdn 2y ago },
41 857e289 Mrdn 2y ago {
42 857e289 Mrdn 2y ago accessorKey: 'inbounds',
43 857e289 Mrdn 2y ago header: ({ column }) => <DataTableColumnHeader title={i18n.t('inbounds')} column={column} />,
44 857e289 Mrdn 2y ago cell: ({ row }) => row.original.inbounds.length
45 857e289 Mrdn 2y ago }
46 857e289 Mrdn 2y ago ];