Improve Board performances (#2626)

Improve app performances
This commit is contained in:
Charles Bochet
2023-11-22 09:58:49 +01:00
committed by GitHub
parent ee8f6899fc
commit 10febd9aeb
11 changed files with 88 additions and 122 deletions

View File

@ -1,16 +1,16 @@
import { useContext } from 'react';
import { useRecoilCallback, useRecoilValue, useSetRecoilState } from 'recoil';
import { activeCardIdsState } from '@/ui/layout/board/states/activeCardIdsState';
import { actionBarOpenState } from '@/ui/navigation/action-bar/states/actionBarIsOpenState';
import { BoardCardIdContext } from '../contexts/BoardCardIdContext';
import { activeCardIdsState } from '../states/activeCardIdsState';
import { isCardSelectedFamilyState } from '../states/isCardSelectedFamilyState';
export const useCurrentCardSelected = () => {
const currentCardId = useContext(BoardCardIdContext);
const isCardSelected = useRecoilValue(
const isCurrentCardSelected = useRecoilValue(
isCardSelectedFamilyState(currentCardId ?? ''),
);
@ -38,24 +38,8 @@ export const useCurrentCardSelected = () => {
[currentCardId, setActiveCardIds],
);
const unselectAllActiveCards = useRecoilCallback(
({ set, snapshot }) =>
() => {
const activeCardIds = snapshot.getLoadable(activeCardIdsState).contents;
activeCardIds.forEach((cardId: string) => {
set(isCardSelectedFamilyState(cardId), false);
});
set(activeCardIdsState, []);
set(actionBarOpenState, false);
},
[],
);
return {
currentCardSelected: isCardSelected,
isCurrentCardSelected,
setCurrentCardSelected,
unselectAllActiveCards,
};
};