* Refactored tables without tan stack * Fixed checkbox behavior with multiple handlers on click * Fixed hotkeys scope * Fix debounce in editable cells * Lowered coverage --------- Co-authored-by: Charles Bochet <charles@twenty.com>
25 lines
742 B
TypeScript
25 lines
742 B
TypeScript
import { selector } from 'recoil';
|
|
|
|
import { AllRowsSelectedStatus } from '../types/AllRowSelectedStatus';
|
|
|
|
import { numberOfSelectedRowState } from './numberOfSelectedRowState';
|
|
import { numberOfTableRowsSelectorState } from './numberOfTableRowsSelectorState';
|
|
|
|
export const allRowsSelectedStatusSelector = selector<AllRowsSelectedStatus>({
|
|
key: 'allRowsSelectedStatusSelector',
|
|
get: ({ get }) => {
|
|
const numberOfRows = get(numberOfTableRowsSelectorState);
|
|
|
|
const numberOfSelectedRows = get(numberOfSelectedRowState);
|
|
|
|
const allRowsSelectedStatus =
|
|
numberOfSelectedRows === 0
|
|
? 'none'
|
|
: numberOfRows === numberOfSelectedRows
|
|
? 'all'
|
|
: 'some';
|
|
|
|
return allRowsSelectedStatus;
|
|
},
|
|
});
|