fedisearch/application/src/components/node/NodeHeader.tsx

64 wiersze
2.3 KiB
TypeScript

import React, {ReactElement} from "react";
import {NodeQueryInput, NodeSortingByEnum} from "../../graphql/generated/types";
import SortToggle from "../SortToggle";
export default function NodeHeader({query,onSortToggle}:{
query: NodeQueryInput
onSortToggle: (sortBy: NodeSortingByEnum)=> void
}):ReactElement{
return (
<thead>
<tr>
<th rowSpan={2}>
<SortToggle onToggle={onSortToggle} field={'domain'} sort={query}>
Domain
</SortToggle>
</th>
<th rowSpan={2}>
<SortToggle onToggle={onSortToggle} field={'softwareName'} sort={query}>
Software
</SortToggle>
</th>
<th colSpan={4}>User count</th>
<th rowSpan={2} className={'number-cell'}>
<SortToggle onToggle={onSortToggle} field={'statusesCount'} sort={query}>
Statuses
</SortToggle>
</th>
<th rowSpan={2}>
<SortToggle onToggle={onSortToggle} field={'openRegistrations'} sort={query}>
Registrations
</SortToggle>
</th>
<th rowSpan={2}>
<SortToggle onToggle={onSortToggle} field={'refreshedAt'} sort={query}>
Last refreshed
</SortToggle>
</th>
</tr>
<tr>
<th className={'text-end'}>
<SortToggle onToggle={onSortToggle} field={'totalUserCount'} sort={query}>
Total
</SortToggle>
</th>
<th className={'text-end'}>
<SortToggle onToggle={onSortToggle} field={'accountFeedCount'} sort={query}>
Indexed
</SortToggle>
</th>
<th className={'text-end'}>
<SortToggle onToggle={onSortToggle} field={'monthActiveUserCount'} sort={query}>
Month active
</SortToggle>
</th>
<th className={'text-end'}>
<SortToggle onToggle={onSortToggle} field={'halfYearActiveUserCount'} sort={query}>
Half year active
</SortToggle>
</th>
</tr>
</thead>
)
}