2023-04-27 09:22:05 +07:00
|
|
|
import moment from 'moment';
|
2023-03-06 22:25:04 +02:00
|
|
|
import { CellProps, Column } from 'react-table';
|
2022-11-22 14:16:34 +02:00
|
|
|
|
2023-03-06 22:25:04 +02:00
|
|
|
import { WaitingRoomEnvironment } from '../types';
|
2022-11-22 14:16:34 +02:00
|
|
|
|
2023-03-06 22:25:04 +02:00
|
|
|
export const columns: readonly Column<WaitingRoomEnvironment>[] = [
|
2022-11-22 14:16:34 +02:00
|
|
|
{
|
|
|
|
Header: 'Name',
|
|
|
|
accessor: (row) => row.Name,
|
|
|
|
id: 'name',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Header: 'Edge ID',
|
|
|
|
accessor: (row) => row.EdgeID,
|
|
|
|
id: 'edge-id',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
2023-03-06 22:25:04 +02:00
|
|
|
{
|
|
|
|
Header: 'Edge Groups',
|
|
|
|
accessor: (row) => row.EdgeGroups || [],
|
|
|
|
Cell: ({ value }: CellProps<WaitingRoomEnvironment, string[]>) =>
|
|
|
|
value.join(', ') || '-',
|
|
|
|
id: 'edge-groups',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Header: 'Group',
|
|
|
|
accessor: (row) => row.Group || '-',
|
|
|
|
id: 'group',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
Header: 'Tags',
|
|
|
|
accessor: (row) => row.Tags || [],
|
|
|
|
Cell: ({ value }: CellProps<WaitingRoomEnvironment, string[]>) =>
|
|
|
|
value.join(', ') || '-',
|
|
|
|
id: 'tags',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
2023-04-27 09:22:05 +07:00
|
|
|
{
|
|
|
|
Header: 'Last Check-in',
|
|
|
|
accessor: 'LastCheckInDate',
|
|
|
|
Cell: LastCheckinDateCell,
|
|
|
|
id: 'last-check-in',
|
|
|
|
disableFilters: true,
|
|
|
|
Filter: () => null,
|
|
|
|
canHide: false,
|
|
|
|
sortType: 'string',
|
|
|
|
},
|
2022-11-22 14:16:34 +02:00
|
|
|
] as const;
|
2023-04-27 09:22:05 +07:00
|
|
|
|
|
|
|
function LastCheckinDateCell({
|
|
|
|
value,
|
|
|
|
}: CellProps<WaitingRoomEnvironment, number>) {
|
|
|
|
if (!value) {
|
|
|
|
return '-';
|
|
|
|
}
|
|
|
|
|
|
|
|
return moment(value * 1000).fromNow();
|
|
|
|
}
|