Refactor Views by cleaning the code, relying on apolloCache and improving performances (#4516)

* Wip refactoring view

* Post merge conflicts

* Fix review

* Add create view capability

* Fix create object missing view

* Fix tests
This commit is contained in:
Charles Bochet
2024-03-20 14:21:58 +01:00
committed by GitHub
parent 20e14cb455
commit cfb0cce9b8
392 changed files with 3474 additions and 4410 deletions

View File

@ -12,9 +12,9 @@ describe('useEmailThread', () => {
const { result } = renderHook(
() => {
const emailThread = useEmailThread();
const isRightDrawerOpen = useRecoilValue(isRightDrawerOpenState());
const isRightDrawerOpen = useRecoilValue(isRightDrawerOpenState);
const viewableEmailThreadId = useRecoilValue(
viewableEmailThreadIdState(),
viewableEmailThreadIdState,
);
return { ...emailThread, isRightDrawerOpen, viewableEmailThreadId };
@ -38,10 +38,10 @@ describe('useEmailThread', () => {
() => {
const emailThread = useEmailThread();
const [isRightDrawerOpen, setIsRightDrawerOpen] = useRecoilState(
isRightDrawerOpenState(),
isRightDrawerOpenState,
);
const [viewableEmailThreadId, setViewableEmailThreadId] =
useRecoilState(viewableEmailThreadIdState());
useRecoilState(viewableEmailThreadIdState);
return {
...emailThread,

View File

@ -30,7 +30,7 @@ describe('useEmailThreadStates hook', () => {
);
expect(result.current.scopeId).toBe(mockScopeId);
expect(result.current.getEmailThreadsPageState).toBe(
expect(result.current.emailThreadsPageState).toBe(
mockGetEmailThreadsPageState,
);
});

View File

@ -17,7 +17,7 @@ export const useEmailThreadStates = ({
return {
scopeId,
getEmailThreadsPageState: extractComponentState(
emailThreadsPageState: extractComponentState(
emailThreadsPageComponentState,
scopeId,
),

View File

@ -13,21 +13,21 @@ export const useEmailThread = () => {
({ snapshot, set }) =>
(threadId: string) => {
const isRightDrawerOpen = snapshot
.getLoadable(isRightDrawerOpenState())
.getLoadable(isRightDrawerOpenState)
.getValue();
const viewableEmailThreadId = snapshot
.getLoadable(viewableEmailThreadIdState())
.getLoadable(viewableEmailThreadIdState)
.getValue();
if (isRightDrawerOpen && viewableEmailThreadId === threadId) {
set(viewableEmailThreadIdState(), null);
set(viewableEmailThreadIdState, null);
closeRightDrawer();
return;
}
openEmailThredRightDrawer();
set(viewableEmailThreadIdState(), threadId);
set(viewableEmailThreadIdState, threadId);
},
[closeRightDrawer, openEmailThredRightDrawer],
);