Fix/object record and metadata naming (#2763)

* Fixed object-record and object-metadata naming

* Fix post merge

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
Lucas Bordeau
2023-11-29 13:45:57 +01:00
committed by GitHub
parent 3617abb0e6
commit d855a42eca
99 changed files with 614 additions and 691 deletions

View File

@ -6,7 +6,7 @@ import { isNonEmptyString } from '@sniptt/guards';
import debounce from 'lodash.debounce';
import { Activity } from '@/activities/types/Activity';
import { useUpdateOneObjectRecord } from '@/object-record/hooks/useUpdateOneObjectRecord';
import { useUpdateOneRecord } from '@/object-record/hooks/useUpdateOneRecord';
import { BlockEditor } from '@/ui/input/editor/components/BlockEditor';
const StyledBlockNoteStyledContainer = styled.div`
@ -23,7 +23,7 @@ export const ActivityBodyEditor = ({
onChange,
}: ActivityBodyEditorProps) => {
const [body, setBody] = useState<string | null>(null);
const { updateOneObject } = useUpdateOneObjectRecord({
const { updateOneRecord } = useUpdateOneRecord({
objectNameSingular: 'activity',
});
@ -36,7 +36,7 @@ export const ActivityBodyEditor = ({
const debounceOnChange = useMemo(() => {
const onInternalChange = (activityBody: string) => {
setBody(activityBody);
updateOneObject?.({
updateOneRecord?.({
idToUpdate: activity.id,
input: {
body: activityBody,
@ -45,7 +45,7 @@ export const ActivityBodyEditor = ({
};
return debounce(onInternalChange, 200);
}, [updateOneObject, activity.id]);
}, [updateOneRecord, activity.id]);
const editor: BlockNoteEditor | null = useBlockNote({
initialContent:

View File

@ -7,8 +7,8 @@ import { Comment } from '@/activities/comment/Comment';
import { Activity } from '@/activities/types/Activity';
import { Comment as CommentType } from '@/activities/types/Comment';
import { currentWorkspaceMemberState } from '@/auth/states/currentWorkspaceMemberState';
import { useCreateOneObjectRecord } from '@/object-record/hooks/useCreateOneObjectRecord';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useCreateOneRecord } from '@/object-record/hooks/useCreateOneRecord';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import {
AutosizeTextInput,
AutosizeTextInputVariant,
@ -60,13 +60,13 @@ export const ActivityComments = ({
activity,
scrollableContainerRef,
}: ActivityCommentsProps) => {
const { createOneObject } = useCreateOneObjectRecord({
const { createOneRecord: createOneComment } = useCreateOneRecord({
objectNameSingular: 'comment',
});
const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState);
const { objects: comments } = useFindManyObjectRecords({
const { records: comments } = useFindManyRecords({
objectNamePlural: 'comments',
filter: {
activityId: {
@ -84,7 +84,7 @@ export const ActivityComments = ({
return;
}
createOneObject?.({
createOneComment?.({
id: v4(),
authorId: currentWorkspaceMember?.id ?? '',
activityId: activity?.id ?? '',

View File

@ -10,7 +10,7 @@ import { ActivityTarget } from '@/activities/types/ActivityTarget';
import { Comment } from '@/activities/types/Comment';
import { GraphQLActivity } from '@/activities/types/GraphQLActivity';
import { useFieldContext } from '@/object-record/hooks/useFieldContext';
import { useUpdateOneObjectRecord } from '@/object-record/hooks/useUpdateOneObjectRecord';
import { useUpdateOneRecord } from '@/object-record/hooks/useUpdateOneRecord';
import { RecordInlineCell } from '@/ui/object/record-inline-cell/components/RecordInlineCell';
import { PropertyBox } from '@/ui/object/record-inline-cell/property-box/components/PropertyBox';
import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile';
@ -80,7 +80,7 @@ export const ActivityEditor = ({
const [title, setTitle] = useState<string | null>(activity.title ?? '');
const containerRef = useRef<HTMLDivElement>(null);
const { updateOneObject } = useUpdateOneObjectRecord<Activity>({
const { updateOneRecord: updateOneActivity } = useUpdateOneRecord<Activity>({
objectNameSingular: 'activity',
});
@ -103,18 +103,18 @@ export const ActivityEditor = ({
const updateTitle = useCallback(
(newTitle: string) => {
updateOneObject?.({
updateOneActivity?.({
idToUpdate: activity.id,
input: {
title: newTitle ?? '',
},
});
},
[activity.id, updateOneObject],
[activity.id, updateOneActivity],
);
const handleActivityCompletionChange = useCallback(
(value: boolean) => {
updateOneObject?.({
updateOneActivity?.({
idToUpdate: activity.id,
input: {
completedAt: value ? new Date().toISOString() : null,
@ -122,7 +122,7 @@ export const ActivityEditor = ({
forceRefetch: true,
});
},
[activity.id, updateOneObject],
[activity.id, updateOneActivity],
);
const debouncedUpdateTitle = debounce(updateTitle, 200);

View File

@ -1,6 +1,6 @@
import { ActivityTarget } from '@/activities/types/ActivityTarget';
import { useCreateOneObjectRecord } from '@/object-record/hooks/useCreateOneObjectRecord';
import { useDeleteOneObjectRecord } from '@/object-record/hooks/useDeleteOneObjectRecord';
import { useCreateOneRecord } from '@/object-record/hooks/useCreateOneRecord';
import { useDeleteOneRecord } from '@/object-record/hooks/useDeleteOneRecord';
export const useHandleCheckableActivityTargetChange = ({
activityId,
@ -9,10 +9,11 @@ export const useHandleCheckableActivityTargetChange = ({
activityId: string;
currentActivityTargets: any[];
}) => {
const { createOneObject } = useCreateOneObjectRecord<ActivityTarget>({
objectNameSingular: 'activityTarget',
});
const { deleteOneObject } = useDeleteOneObjectRecord({
const { createOneRecord: createOneActivityTarget } =
useCreateOneRecord<ActivityTarget>({
objectNameSingular: 'activityTarget',
});
const { deleteOneRecord: deleteOneActivityTarget } = useDeleteOneRecord({
objectNameSingular: 'activityTarget',
});
@ -54,7 +55,7 @@ export const useHandleCheckableActivityTargetChange = ({
: null;
const entity = entityFromToSelect ?? entityFromSelected;
createOneObject?.({
createOneActivityTarget?.({
activityId: activityId,
companyId: entity.record.__typename === 'Company' ? entity.id : null,
personId: entity.record.__typename === 'Person' ? entity.id : null,
@ -67,7 +68,7 @@ export const useHandleCheckableActivityTargetChange = ({
const currentActivityTargetId = currentActivityTargets.filter(
({ companyId, personId }) => companyId === id || personId === id,
)[0].id;
deleteOneObject?.(currentActivityTargetId);
deleteOneActivityTarget?.(currentActivityTargetId);
});
}
};

View File

@ -4,7 +4,7 @@ import { useRecoilState, useRecoilValue } from 'recoil';
import { Activity, ActivityType } from '@/activities/types/Activity';
import { ActivityTarget } from '@/activities/types/ActivityTarget';
import { currentWorkspaceMemberState } from '@/auth/states/currentWorkspaceMemberState';
import { useCreateOneObjectRecord } from '@/object-record/hooks/useCreateOneObjectRecord';
import { useCreateOneRecord } from '@/object-record/hooks/useCreateOneRecord';
import { useRightDrawer } from '@/ui/layout/right-drawer/hooks/useRightDrawer';
import { RightDrawerHotkeyScope } from '@/ui/layout/right-drawer/types/RightDrawerHotkeyScope';
import { RightDrawerPages } from '@/ui/layout/right-drawer/types/RightDrawerPages';
@ -17,14 +17,13 @@ import { getTargetableEntitiesWithParents } from '../utils/getTargetableEntities
export const useOpenCreateActivityDrawer = () => {
const { openRightDrawer } = useRightDrawer();
const { createOneObject: createOneActivityTarget } =
useCreateOneObjectRecord<ActivityTarget>({
const { createOneRecord: createOneActivityTarget } =
useCreateOneRecord<ActivityTarget>({
objectNameSingular: 'activityTarget',
});
const { createOneObject: createOneActivity } =
useCreateOneObjectRecord<Activity>({
objectNameSingular: 'activity',
});
const { createOneRecord: createOneActivity } = useCreateOneRecord<Activity>({
objectNameSingular: 'activity',
});
const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState);
const setHotkeyScope = useSetHotkeyScope();

View File

@ -55,13 +55,14 @@ export const ActivityTargetInlineCellEditMode = ({
[initialPeopleIds, initialCompanyIds],
);
const { findManyQuery: findManyPeopleQuery } = useObjectMetadataItem({
const { findManyRecordsQuery: findManyPeopleQuery } = useObjectMetadataItem({
objectNameSingular: 'person',
});
const { findManyQuery: findManyCompaniesQuery } = useObjectMetadataItem({
objectNameSingular: 'company',
});
const { findManyRecordsQuery: findManyCompaniesQuery } =
useObjectMetadataItem({
objectNameSingular: 'company',
});
const useFindManyPeopleQuery = (options: any) =>
useQuery(findManyPeopleQuery, options);

View File

@ -2,7 +2,7 @@ import { ActivityTargetChips } from '@/activities/components/ActivityTargetChips
import { ActivityTargetInlineCellEditMode } from '@/activities/inline-cell/components/ActivityTargetInlineCellEditMode';
import { ActivityTarget } from '@/activities/types/ActivityTarget';
import { GraphQLActivity } from '@/activities/types/GraphQLActivity';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { IconArrowUpRight, IconPencil } from '@/ui/display/icon';
import { RelationPickerHotkeyScope } from '@/ui/input/relation-picker/types/RelationPickerHotkeyScope';
import { RecordInlineCellContainer } from '@/ui/object/record-inline-cell/components/RecordInlineCellContainer';
@ -27,12 +27,10 @@ export const ActivityTargetsInlineCell = ({
(activityTarget) => activityTarget.node.id,
) ?? [];
const { objects: activityTargets } = useFindManyObjectRecords<ActivityTarget>(
{
objectNamePlural: 'activityTargets',
filter: { id: { in: activityTargetIds } },
},
);
const { records: activityTargets } = useFindManyRecords<ActivityTarget>({
objectNamePlural: 'activityTargets',
filter: { id: { in: activityTargetIds } },
});
return (
<RecoilScope CustomRecoilScopeContext={FieldRecoilScopeContext}>

View File

@ -1,10 +1,10 @@
import { Note } from '@/activities/types/Note';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { ActivityTargetableEntity } from '../../types/ActivityTargetableEntity';
export const useNotes = (entity: ActivityTargetableEntity) => {
const { objects: activityTargets } = useFindManyObjectRecords({
const { records: activityTargets } = useFindManyRecords({
objectNamePlural: 'activityTargets',
filter: {
[entity.type === 'Company' ? 'companyId' : 'personId']: { eq: entity.id },
@ -21,7 +21,7 @@ export const useNotes = (entity: ActivityTargetableEntity) => {
createdAt: 'AscNullsFirst',
};
const { objects: notes } = useFindManyObjectRecords({
const { records: notes } = useFindManyRecords({
skip: !activityTargets?.length,
objectNamePlural: 'activities',
filter,

View File

@ -1,6 +1,6 @@
import { useRecoilState } from 'recoil';
import { useDeleteOneObjectRecord } from '@/object-record/hooks/useDeleteOneObjectRecord';
import { useDeleteOneRecord } from '@/object-record/hooks/useDeleteOneRecord';
import { IconTrash } from '@/ui/display/icon';
import { LightIconButton } from '@/ui/input/button/components/LightIconButton';
import { isRightDrawerOpenState } from '@/ui/layout/right-drawer/states/isRightDrawerOpenState';
@ -11,12 +11,12 @@ type ActivityActionBarProps = {
export const ActivityActionBar = ({ activityId }: ActivityActionBarProps) => {
const [, setIsRightDrawerOpen] = useRecoilState(isRightDrawerOpenState);
const { deleteOneObject } = useDeleteOneObjectRecord({
const { deleteOneRecord: deleteOneActivity } = useDeleteOneRecord({
objectNameSingular: 'activity',
});
const deleteActivity = () => {
deleteOneObject?.(activityId);
deleteOneActivity?.(activityId);
setIsRightDrawerOpen(false);
};

View File

@ -4,7 +4,7 @@ import { useRecoilState } from 'recoil';
import { ActivityEditor } from '@/activities/components/ActivityEditor';
import { Activity } from '@/activities/types/Activity';
import { useFindOneObjectRecord } from '@/object-record/hooks/useFindOneObjectRecord';
import { useFindOneRecord } from '@/object-record/hooks/useFindOneRecord';
import { entityFieldsFamilyState } from '@/ui/object/field/states/entityFieldsFamilyState';
import '@blocknote/core/style.css';
@ -34,7 +34,7 @@ export const RightDrawerActivity = ({
entityFieldsFamilyState(activityId),
);
const { object: activity } = useFindOneObjectRecord({
const { record: activity } = useFindOneRecord({
objectNameSingular: 'activity',
objectRecordId: activityId,
skip: !activityId,

View File

@ -6,7 +6,7 @@ import { ActivityTargetChips } from '@/activities/components/ActivityTargetChips
import { useOpenActivityRightDrawer } from '@/activities/hooks/useOpenActivityRightDrawer';
import { ActivityTarget } from '@/activities/types/ActivityTarget';
import { GraphQLActivity } from '@/activities/types/GraphQLActivity';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { IconCalendar, IconComment } from '@/ui/display/icon';
import { OverflowingTextWithTooltip } from '@/ui/display/tooltip/OverflowingTextWithTooltip';
import { Checkbox, CheckboxShape } from '@/ui/input/components/Checkbox';
@ -81,12 +81,10 @@ export const TaskRow = ({
(activityTarget) => activityTarget.node.id,
) ?? [];
const { objects: activityTargets } = useFindManyObjectRecords<ActivityTarget>(
{
objectNamePlural: 'activityTargets',
filter: { id: { in: activityTargetIds } },
},
);
const { records: activityTargets } = useFindManyRecords<ActivityTarget>({
objectNamePlural: 'activityTargets',
filter: { id: { in: activityTargetIds } },
});
return (
<StyledContainer

View File

@ -1,19 +1,19 @@
import { useCallback } from 'react';
import { Activity } from '@/activities/types/Activity';
import { useUpdateOneObjectRecord } from '@/object-record/hooks/useUpdateOneObjectRecord';
import { useUpdateOneRecord } from '@/object-record/hooks/useUpdateOneRecord';
type Task = Pick<Activity, 'id' | 'completedAt'>;
export const useCompleteTask = (task: Task) => {
const { updateOneObject } = useUpdateOneObjectRecord({
const { updateOneRecord: updateOneActivity } = useUpdateOneRecord({
objectNameSingular: 'activity',
});
const completeTask = useCallback(
(value: boolean) => {
const completedAt = value ? new Date().toISOString() : null;
updateOneObject?.({
updateOneActivity?.({
idToUpdate: task.id,
input: {
completedAt,
@ -21,7 +21,7 @@ export const useCompleteTask = (task: Task) => {
forceRefetch: true,
});
},
[task.id, updateOneObject],
[task.id, updateOneActivity],
);
return {

View File

@ -2,13 +2,13 @@ import { DateTime } from 'luxon';
import { useRecoilValue } from 'recoil';
import { currentWorkspaceMemberState } from '@/auth/states/currentWorkspaceMemberState';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { parseDate } from '~/utils/date-utils';
export const useCurrentUserTaskCount = () => {
const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState);
const { objects } = useFindManyObjectRecords({
const { records: tasks } = useFindManyRecords({
objectNamePlural: 'activities',
filter: {
type: { eq: 'Task' },
@ -17,7 +17,7 @@ export const useCurrentUserTaskCount = () => {
},
});
const currentUserDueTaskCount = objects.filter((task) => {
const currentUserDueTaskCount = tasks.filter((task) => {
if (!task.dueAt) {
return false;
}

View File

@ -4,7 +4,7 @@ import { undefined } from 'zod';
import { Activity } from '@/activities/types/Activity';
import { ActivityTargetableEntity } from '@/activities/types/ActivityTargetableEntity';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { useFilterDropdown } from '@/ui/object/object-filter-dropdown/hooks/useFilterDropdown';
import { parseDate } from '~/utils/date-utils';
import { isDefined } from '~/utils/isDefined';
@ -21,7 +21,7 @@ export const useTasks = (props?: UseTasksProps) => {
filterDropdownId: filterDropdownId,
});
const { objects: activityTargets } = useFindManyObjectRecords({
const { records: activityTargets } = useFindManyRecords({
objectNamePlural: 'activityTargets',
filter: isDefined(entity)
? {
@ -32,7 +32,7 @@ export const useTasks = (props?: UseTasksProps) => {
: undefined,
});
const { objects: completeTasksData } = useFindManyObjectRecords({
const { records: completeTasksData } = useFindManyRecords({
objectNamePlural: 'activities',
skip: !entity && !selectedFilter,
filter: {
@ -56,7 +56,7 @@ export const useTasks = (props?: UseTasksProps) => {
},
});
const { objects: incompleteTaskData } = useFindManyObjectRecords({
const { records: incompleteTaskData } = useFindManyRecords({
objectNamePlural: 'activities',
skip: !entity && !selectedFilter,
filter: {

View File

@ -5,7 +5,7 @@ import { ActivityCreateButton } from '@/activities/components/ActivityCreateButt
import { useOpenCreateActivityDrawer } from '@/activities/hooks/useOpenCreateActivityDrawer';
import { Activity } from '@/activities/types/Activity';
import { ActivityTargetableEntity } from '@/activities/types/ActivityTargetableEntity';
import { useFindManyObjectRecords } from '@/object-record/hooks/useFindManyObjectRecords';
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile';
import { TimelineItemsContainer } from './TimelineItemsContainer';
@ -48,14 +48,14 @@ const StyledEmptyTimelineSubTitle = styled.div`
`;
export const Timeline = ({ entity }: { entity: ActivityTargetableEntity }) => {
const { objects: activityTargets, loading } = useFindManyObjectRecords({
const { records: activityTargets, loading } = useFindManyRecords({
objectNamePlural: 'activityTargets',
filter: {
[entity.type === 'Company' ? 'companyId' : 'personId']: { eq: entity.id },
},
});
const { objects: activities } = useFindManyObjectRecords({
const { records: activities } = useFindManyRecords({
skip: !activityTargets?.length,
objectNamePlural: 'activities',
filter: {