fix workflow chips not clickable (#11767)

bug introduced in this PR https://github.com/twentyhq/twenty/pull/1174
This commit is contained in:
Etienne
2025-04-28 15:30:26 +02:00
committed by GitHub
parent 14afa57699
commit 2586d0ec4f
8 changed files with 21 additions and 13 deletions

View File

@ -1,4 +1,5 @@
import { useOpenRecordInCommandMenu } from '@/command-menu/hooks/useOpenRecordInCommandMenu';
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
import { getLinkToShowPage } from '@/object-metadata/utils/getLinkToShowPage';
import { useRecordChipData } from '@/object-record/hooks/useRecordChipData';
import { recordIndexOpenRecordInState } from '@/object-record/record-index/states/recordIndexOpenRecordInState';
@ -47,7 +48,10 @@ export const RecordChip = ({
const recordIndexOpenRecordIn = useRecoilValue(recordIndexOpenRecordInState);
// TODO temporary until we create a record show page for Workspaces members
if (forceDisableClick) {
if (
forceDisableClick ||
objectNameSingular === CoreObjectNameSingular.WorkspaceMember
) {
return (
<AvatarChip
size={size}

View File

@ -33,6 +33,7 @@ export type GenericFieldContextType = {
displayedMaxRows?: number;
isDisplayModeFixHeight?: boolean;
isReadOnly: boolean;
disableChipClick?: boolean;
onOpenEditMode?: () => void;
onCloseEditMode?: () => void;
};

View File

@ -9,7 +9,7 @@ export const ChipFieldDisplay = () => {
objectNameSingular,
labelIdentifierLink,
isLabelIdentifierCompact,
isReadOnly,
disableChipClick,
} = useChipFieldDisplay();
if (!isDefined(recordValue)) {
@ -23,7 +23,7 @@ export const ChipFieldDisplay = () => {
size={ChipSize.Small}
to={labelIdentifierLink}
isLabelHidden={isLabelIdentifierCompact}
forceDisableClick={isReadOnly}
forceDisableClick={disableChipClick}
/>
);
};

View File

@ -15,7 +15,7 @@ import { pascalCase } from '~/utils/string/pascalCase';
export const RelationFromManyFieldDisplay = () => {
const { fieldValue, fieldDefinition } = useRelationFromManyFieldDisplay();
const { isFocused } = useFieldFocus();
const { isReadOnly } = useContext(FieldContext);
const { disableChipClick } = useContext(FieldContext);
const { fieldName, objectMetadataNameSingular } = fieldDefinition.metadata;
@ -76,7 +76,7 @@ export const RelationFromManyFieldDisplay = () => {
key={record.id}
objectNameSingular={objectNameSingular}
record={record[relationFieldName]}
forceDisableClick={isReadOnly}
forceDisableClick={disableChipClick}
/>
);
})
@ -91,7 +91,7 @@ export const RelationFromManyFieldDisplay = () => {
key={record.targetObject.id}
objectNameSingular={record.targetObjectMetadataItem.nameSingular}
record={record.targetObject}
forceDisableClick={isReadOnly}
forceDisableClick={disableChipClick}
/>
))}
</ExpandableList>
@ -104,7 +104,7 @@ export const RelationFromManyFieldDisplay = () => {
key={record.id}
objectNameSingular={objectNameSingular}
record={record}
forceDisableClick={isReadOnly}
forceDisableClick={disableChipClick}
/>
))}
</ExpandableList>

View File

@ -9,7 +9,7 @@ export const RelationToOneFieldDisplay = () => {
const { fieldValue, fieldDefinition, generateRecordChipData } =
useRelationToOneFieldDisplay();
const { isReadOnly } = useContext(FieldContext);
const { disableChipClick } = useContext(FieldContext);
if (
!isDefined(fieldValue) ||
@ -28,7 +28,9 @@ export const RelationToOneFieldDisplay = () => {
key={recordChipData.recordId}
objectNameSingular={recordChipData.objectNameSingular}
record={fieldValue}
forceDisableClick={isWorkspaceMemberFieldMetadataRelation || isReadOnly}
forceDisableClick={
isWorkspaceMemberFieldMetadataRelation || disableChipClick
}
/>
);
};

View File

@ -18,7 +18,7 @@ export const useChipFieldDisplay = () => {
isLabelIdentifier,
labelIdentifierLink,
isLabelIdentifierCompact,
isReadOnly,
disableChipClick,
} = useContext(FieldContext);
const { chipGeneratorPerObjectPerField } = useContext(
@ -49,6 +49,6 @@ export const useChipFieldDisplay = () => {
isLabelIdentifier,
labelIdentifierLink,
isLabelIdentifierCompact,
isReadOnly,
disableChipClick,
};
};

View File

@ -153,7 +153,8 @@ export const SettingsDataModelFieldPreview = ({
},
defaultValue: fieldMetadataItem.defaultValue,
},
isReadOnly: true,
isReadOnly: false,
disableChipClick: true,
}}
>
{fieldMetadataItem.type === FieldMetadataType.BOOLEAN ? (

View File

@ -4,10 +4,10 @@ import { WorkspaceQueryHookInstance } from 'src/engine/api/graphql/workspace-que
import { FindManyResolverArgs } from 'src/engine/api/graphql/workspace-resolver-builder/interfaces/workspace-resolvers-builder.interface';
import { WorkspaceQueryHook } from 'src/engine/api/graphql/workspace-query-runner/workspace-query-hook/decorators/workspace-query-hook.decorator';
import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type';
import { TwentyORMManager } from 'src/engine/twenty-orm/twenty-orm.manager';
import { CanAccessCalendarEventService } from 'src/modules/calendar/common/query-hooks/calendar-event/services/can-access-calendar-event.service';
import { CalendarChannelEventAssociationWorkspaceEntity } from 'src/modules/calendar/common/standard-objects/calendar-channel-event-association.workspace-entity';
import { AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type';
@WorkspaceQueryHook({
key: `calendarEvent.findMany`,