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:
@ -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,
|
||||
|
||||
@ -30,7 +30,7 @@ describe('useEmailThreadStates hook', () => {
|
||||
);
|
||||
|
||||
expect(result.current.scopeId).toBe(mockScopeId);
|
||||
expect(result.current.getEmailThreadsPageState).toBe(
|
||||
expect(result.current.emailThreadsPageState).toBe(
|
||||
mockGetEmailThreadsPageState,
|
||||
);
|
||||
});
|
||||
|
||||
@ -17,7 +17,7 @@ export const useEmailThreadStates = ({
|
||||
|
||||
return {
|
||||
scopeId,
|
||||
getEmailThreadsPageState: extractComponentState(
|
||||
emailThreadsPageState: extractComponentState(
|
||||
emailThreadsPageComponentState,
|
||||
scopeId,
|
||||
),
|
||||
|
||||
@ -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],
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user