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:
@ -201,7 +201,7 @@ describe('useActivities', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const setCurrentWorkspaceMember = useSetRecoilState(
|
||||
currentWorkspaceMemberState(),
|
||||
currentWorkspaceMemberState,
|
||||
);
|
||||
|
||||
const activities = useActivities({
|
||||
|
||||
@ -58,7 +58,7 @@ describe('useActivityConnectionUtils', () => {
|
||||
<RecoilRoot
|
||||
initializeState={(snapshot) => {
|
||||
snapshot.set(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
getObjectMetadataItemsMock(),
|
||||
);
|
||||
}}
|
||||
@ -86,7 +86,7 @@ describe('useActivityConnectionUtils', () => {
|
||||
<RecoilRoot
|
||||
initializeState={(snapshot) => {
|
||||
snapshot.set(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
getObjectMetadataItemsMock(),
|
||||
);
|
||||
}}
|
||||
|
||||
@ -186,10 +186,10 @@ describe('useActivityTargetObjectRecords', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const setCurrentWorkspaceMember = useSetRecoilState(
|
||||
currentWorkspaceMemberState(),
|
||||
currentWorkspaceMemberState,
|
||||
);
|
||||
const setObjectMetadataItems = useSetRecoilState(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
);
|
||||
|
||||
const { activityTargetObjectRecords, loadingActivityTargets } =
|
||||
|
||||
@ -102,7 +102,7 @@ describe('useActivityTargetsForTargetableObject', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const setCurrentWorkspaceMember = useSetRecoilState(
|
||||
currentWorkspaceMemberState(),
|
||||
currentWorkspaceMemberState,
|
||||
);
|
||||
|
||||
const res = useActivityTargetsForTargetableObject({
|
||||
|
||||
@ -29,10 +29,10 @@ describe('useAttachRelationInBothDirections', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const setCurrentWorkspaceMember = useSetRecoilState(
|
||||
currentWorkspaceMemberState(),
|
||||
currentWorkspaceMemberState,
|
||||
);
|
||||
const setObjectMetadataItems = useSetRecoilState(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
);
|
||||
|
||||
const res = useAttachRelationInBothDirections();
|
||||
|
||||
@ -59,10 +59,10 @@ describe('useCreateActivityInCache', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const setCurrentWorkspaceMember = useSetRecoilState(
|
||||
currentWorkspaceMemberState(),
|
||||
currentWorkspaceMemberState,
|
||||
);
|
||||
const setObjectMetadataItems = useSetRecoilState(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
);
|
||||
|
||||
const res = useCreateActivityInCache();
|
||||
|
||||
@ -18,8 +18,8 @@ describe('useOpenActivityRightDrawer', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const openActivityRightDrawer = useOpenActivityRightDrawer();
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState());
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState());
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState);
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState);
|
||||
return {
|
||||
openActivityRightDrawer,
|
||||
activityIdInDrawer,
|
||||
|
||||
@ -28,10 +28,10 @@ describe('useOpenCreateActivityDrawer', () => {
|
||||
const { result } = renderHook(
|
||||
() => {
|
||||
const openActivityRightDrawer = useOpenCreateActivityDrawer();
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState());
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState());
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState);
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState);
|
||||
const setObjectMetadataItems = useSetRecoilState(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
);
|
||||
return {
|
||||
openActivityRightDrawer,
|
||||
|
||||
@ -41,10 +41,10 @@ describe('useOpenCreateActivityDrawerForSelectedRowIds', () => {
|
||||
() => {
|
||||
const openCreateActivityDrawerForSelectedRowIds =
|
||||
useOpenCreateActivityDrawerForSelectedRowIds(recordTableId);
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState());
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState());
|
||||
const viewableActivityId = useRecoilValue(viewableActivityIdState);
|
||||
const activityIdInDrawer = useRecoilValue(activityIdInDrawerState);
|
||||
const setObjectMetadataItems = useSetRecoilState(
|
||||
objectMetadataItemsState(),
|
||||
objectMetadataItemsState,
|
||||
);
|
||||
const scopeId = `${recordTableId}-scope`;
|
||||
const setTableRowIds = useSetRecoilState(
|
||||
|
||||
@ -105,7 +105,7 @@ describe('useUpsertActivity', () => {
|
||||
() => {
|
||||
const res = useUpsertActivity();
|
||||
const setIsActivityInCreateMode = useSetRecoilState(
|
||||
isActivityInCreateModeState(),
|
||||
isActivityInCreateModeState,
|
||||
);
|
||||
|
||||
return { ...res, setIsActivityInCreateMode };
|
||||
@ -134,7 +134,7 @@ describe('useUpsertActivity', () => {
|
||||
() => {
|
||||
const res = useUpsertActivity();
|
||||
const setIsActivityInCreateMode = useSetRecoilState(
|
||||
isActivityInCreateModeState(),
|
||||
isActivityInCreateModeState,
|
||||
);
|
||||
const setObjectShowPageTargetableObject = useSetRecoilState(
|
||||
objectShowPageTargetableObjectState,
|
||||
|
||||
@ -14,7 +14,7 @@ export const useActivityTargetObjectRecords = ({
|
||||
}: {
|
||||
activityId: string;
|
||||
}) => {
|
||||
const objectMetadataItems = useRecoilValue(objectMetadataItemsState());
|
||||
const objectMetadataItems = useRecoilValue(objectMetadataItemsState);
|
||||
|
||||
const { records: activityTargets, loading: loadingActivityTargets } =
|
||||
useFindManyRecords<ActivityTarget>({
|
||||
|
||||
@ -27,7 +27,7 @@ export const useCreateActivityInCache = () => {
|
||||
objectNameSingular: CoreObjectNameSingular.Activity,
|
||||
});
|
||||
|
||||
const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState());
|
||||
const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState);
|
||||
|
||||
const { record: currentWorkspaceMemberRecord } = useFindOneRecord({
|
||||
objectNameSingular: CoreObjectNameSingular.WorkspaceMember,
|
||||
|
||||
@ -12,9 +12,9 @@ export const useOpenActivityRightDrawer = () => {
|
||||
const { openRightDrawer, isRightDrawerOpen, rightDrawerPage } =
|
||||
useRightDrawer();
|
||||
const [viewableActivityId, setViewableActivityId] = useRecoilState(
|
||||
viewableActivityIdState(),
|
||||
viewableActivityIdState,
|
||||
);
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState());
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState);
|
||||
const setHotkeyScope = useSetHotkeyScope();
|
||||
|
||||
return (activityId: string) => {
|
||||
|
||||
@ -24,22 +24,20 @@ export const useOpenCreateActivityDrawer = () => {
|
||||
const { createActivityInCache } = useCreateActivityInCache();
|
||||
|
||||
const setActivityTargetableEntityArray = useSetRecoilState(
|
||||
activityTargetableEntityArrayState(),
|
||||
activityTargetableEntityArrayState,
|
||||
);
|
||||
const setViewableActivityId = useSetRecoilState(viewableActivityIdState());
|
||||
const setViewableActivityId = useSetRecoilState(viewableActivityIdState);
|
||||
|
||||
const setIsCreatingActivity = useSetRecoilState(
|
||||
isActivityInCreateModeState(),
|
||||
);
|
||||
const setIsCreatingActivity = useSetRecoilState(isActivityInCreateModeState);
|
||||
|
||||
const setTemporaryActivityForEditor = useSetRecoilState(
|
||||
temporaryActivityForEditorState(),
|
||||
temporaryActivityForEditorState,
|
||||
);
|
||||
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState());
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState);
|
||||
|
||||
const [, setIsUpsertingActivityInDB] = useRecoilState(
|
||||
isUpsertingActivityInDBState(),
|
||||
isUpsertingActivityInDBState,
|
||||
);
|
||||
|
||||
const openCreateActivityDrawer = async ({
|
||||
|
||||
@ -14,7 +14,7 @@ export const useOpenCreateActivityDrawerForSelectedRowIds = (
|
||||
) => {
|
||||
const openCreateActivityDrawer = useOpenCreateActivityDrawer();
|
||||
|
||||
const { getSelectedRowIdsSelector } = useRecordTableStates(recordTableId);
|
||||
const { selectedRowIdsSelector } = useRecordTableStates(recordTableId);
|
||||
|
||||
return useRecoilCallback(
|
||||
({ snapshot }) =>
|
||||
@ -25,7 +25,7 @@ export const useOpenCreateActivityDrawerForSelectedRowIds = (
|
||||
) => {
|
||||
const selectedRowIds = getSnapshotValue(
|
||||
snapshot,
|
||||
getSelectedRowIdsSelector(),
|
||||
selectedRowIdsSelector(),
|
||||
);
|
||||
|
||||
let activityTargetableObjectArray: ActivityTargetableObject[] =
|
||||
@ -59,6 +59,6 @@ export const useOpenCreateActivityDrawerForSelectedRowIds = (
|
||||
targetableObjects: activityTargetableObjectArray,
|
||||
});
|
||||
},
|
||||
[openCreateActivityDrawer, getSelectedRowIdsSelector],
|
||||
[selectedRowIdsSelector, openCreateActivityDrawer],
|
||||
);
|
||||
};
|
||||
|
||||
@ -21,7 +21,7 @@ import { isDefined } from '~/utils/isDefined';
|
||||
// TODO: create a generic way to have records only in cache for create mode and delete them afterwards ?
|
||||
export const useUpsertActivity = () => {
|
||||
const [isActivityInCreateMode, setIsActivityInCreateMode] = useRecoilState(
|
||||
isActivityInCreateModeState(),
|
||||
isActivityInCreateModeState,
|
||||
);
|
||||
|
||||
const { updateOneRecord: updateOneActivity } = useUpdateOneRecord<Activity>({
|
||||
@ -31,10 +31,10 @@ export const useUpsertActivity = () => {
|
||||
const { createActivityInDB } = useCreateActivityInDB();
|
||||
|
||||
const [, setIsUpsertingActivityInDB] = useRecoilState(
|
||||
isUpsertingActivityInDBState(),
|
||||
isUpsertingActivityInDBState,
|
||||
);
|
||||
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState());
|
||||
const setActivityIdInDrawer = useSetRecoilState(activityIdInDrawerState);
|
||||
|
||||
const objectShowPageTargetableObject = useRecoilValue(
|
||||
objectShowPageTargetableObjectState,
|
||||
|
||||
Reference in New Issue
Block a user