Skip to content

Commit da5dfb7

Browse files
authored
corrected targetableobject being undefined when clicked on create task in command menu (#6635)
Issue #6630 It seems this bug is caused by `targetableObjects` being assigned an empty array, which then leads to an error due to it being undefined. I've made some changes that should address the issue, but I would appreciate any feedback or suggestions on alternative solutions. Please let me know if there is a better approach to resolving this. Thank you! https://github.com/user-attachments/assets/d6409798-3320-49b3-834f-2b6888847ed8
1 parent c2cf8b4 commit da5dfb7

File tree

2 files changed

+35
-16
lines changed

2 files changed

+35
-16
lines changed

packages/twenty-front/src/effect-components/PageChangeEffect.tsx

+5-2
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ import { AppPath } from '@/types/AppPath';
1616
import { PageHotkeyScope } from '@/types/PageHotkeyScope';
1717
import { SettingsPath } from '@/types/SettingsPath';
1818
import { useSetHotkeyScope } from '@/ui/utilities/hotkey/hooks/useSetHotkeyScope';
19+
import { useCleanRecoilState } from '~/hooks/useCleanRecoilState';
1920
import { useIsMatchingLocation } from '~/hooks/useIsMatchingLocation';
2021
import { usePageChangeEffectNavigateLocation } from '~/hooks/usePageChangeEffectNavigateLocation';
2122
import { isDefined } from '~/utils/isDefined';
22-
import { useCleanRecoilState } from '~/hooks/useCleanRecoilState';
2323

2424
// TODO: break down into smaller functions and / or hooks
2525
// - moved usePageChangeEffectNavigateLocation into dedicated hook
@@ -153,7 +153,10 @@ export const PageChangeEffect = () => {
153153
label: 'Create Task',
154154
type: CommandType.Create,
155155
Icon: IconCheckbox,
156-
onCommandClick: () => openCreateActivity({ targetableObjects: [] }),
156+
onCommandClick: () =>
157+
openCreateActivity({
158+
targetableObjects: [],
159+
}),
157160
},
158161
]);
159162
}, [addToCommandMenu, setToInitialCommandMenu, openCreateActivity]);

packages/twenty-front/src/modules/activities/hooks/useOpenCreateActivityDrawer.ts

+30-14
Original file line numberDiff line numberDiff line change
@@ -68,24 +68,40 @@ export const useOpenCreateActivityDrawer = ({
6868
assigneeId: customAssignee?.id,
6969
});
7070

71-
const targetableObjectRelationIdName = `${targetableObjects[0].targetObjectNameSingular}Id`;
72-
73-
await createOneActivityTarget({
74-
taskId:
75-
activityObjectNameSingular === CoreObjectNameSingular.Task
76-
? activity.id
77-
: undefined,
78-
noteId:
79-
activityObjectNameSingular === CoreObjectNameSingular.Note
80-
? activity.id
81-
: undefined,
82-
[targetableObjectRelationIdName]: targetableObjects[0].id,
83-
});
71+
if (targetableObjects.length > 0) {
72+
const targetableObjectRelationIdName = `${targetableObjects[0].targetObjectNameSingular}Id`;
73+
74+
await createOneActivityTarget({
75+
taskId:
76+
activityObjectNameSingular === CoreObjectNameSingular.Task
77+
? activity.id
78+
: undefined,
79+
noteId:
80+
activityObjectNameSingular === CoreObjectNameSingular.Note
81+
? activity.id
82+
: undefined,
83+
[targetableObjectRelationIdName]: targetableObjects[0].id,
84+
});
85+
86+
setActivityTargetableEntityArray(targetableObjects);
87+
} else {
88+
await createOneActivityTarget({
89+
taskId:
90+
activityObjectNameSingular === CoreObjectNameSingular.Task
91+
? activity.id
92+
: undefined,
93+
noteId:
94+
activityObjectNameSingular === CoreObjectNameSingular.Note
95+
? activity.id
96+
: undefined,
97+
});
98+
99+
setActivityTargetableEntityArray([]);
100+
}
84101

85102
setHotkeyScope(RightDrawerHotkeyScope.RightDrawer, { goto: false });
86103
setViewableRecordId(activity.id);
87104
setViewableRecordNameSingular(activityObjectNameSingular);
88-
setActivityTargetableEntityArray(targetableObjects ?? []);
89105

90106
openRightDrawer(RightDrawerPages.ViewRecord);
91107
setIsUpsertingActivityInDB(false);

0 commit comments

Comments
 (0)