1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-19 21:46:43 -04:00
Files
Sonarr/frontend/src/Components/Table/TableSelectAllHeaderCell.tsx
T
2025-01-25 19:38:05 -08:00

44 lines
1.0 KiB
TypeScript

import React, { useMemo } from 'react';
import CheckInput from 'Components/Form/CheckInput';
import { CheckInputChanged } from 'typings/inputs';
import VirtualTableHeaderCell from './TableHeaderCell';
import styles from './TableSelectAllHeaderCell.css';
interface TableSelectAllHeaderCellProps {
allSelected: boolean;
allUnselected: boolean;
onSelectAllChange: (change: CheckInputChanged) => void;
}
function TableSelectAllHeaderCell({
allSelected,
allUnselected,
onSelectAllChange,
}: TableSelectAllHeaderCellProps) {
const value = useMemo(() => {
if (allSelected) {
return true;
} else if (allUnselected) {
return false;
}
return null;
}, [allSelected, allUnselected]);
return (
<VirtualTableHeaderCell
className={styles.selectAllHeaderCell}
name="selectAll"
>
<CheckInput
className={styles.input}
name="selectAll"
value={value}
onChange={onSelectAllChange}
/>
</VirtualTableHeaderCell>
);
}
export default TableSelectAllHeaderCell;