fix workflow chips not clickable (#11767)
bug introduced in this PR https://github.com/twentyhq/twenty/pull/1174
This commit is contained in:
@ -1,4 +1,5 @@
|
|||||||
import { useOpenRecordInCommandMenu } from '@/command-menu/hooks/useOpenRecordInCommandMenu';
|
import { useOpenRecordInCommandMenu } from '@/command-menu/hooks/useOpenRecordInCommandMenu';
|
||||||
|
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
|
||||||
import { getLinkToShowPage } from '@/object-metadata/utils/getLinkToShowPage';
|
import { getLinkToShowPage } from '@/object-metadata/utils/getLinkToShowPage';
|
||||||
import { useRecordChipData } from '@/object-record/hooks/useRecordChipData';
|
import { useRecordChipData } from '@/object-record/hooks/useRecordChipData';
|
||||||
import { recordIndexOpenRecordInState } from '@/object-record/record-index/states/recordIndexOpenRecordInState';
|
import { recordIndexOpenRecordInState } from '@/object-record/record-index/states/recordIndexOpenRecordInState';
|
||||||
@ -47,7 +48,10 @@ export const RecordChip = ({
|
|||||||
const recordIndexOpenRecordIn = useRecoilValue(recordIndexOpenRecordInState);
|
const recordIndexOpenRecordIn = useRecoilValue(recordIndexOpenRecordInState);
|
||||||
|
|
||||||
// TODO temporary until we create a record show page for Workspaces members
|
// TODO temporary until we create a record show page for Workspaces members
|
||||||
if (forceDisableClick) {
|
if (
|
||||||
|
forceDisableClick ||
|
||||||
|
objectNameSingular === CoreObjectNameSingular.WorkspaceMember
|
||||||
|
) {
|
||||||
return (
|
return (
|
||||||
<AvatarChip
|
<AvatarChip
|
||||||
size={size}
|
size={size}
|
||||||
|
|||||||
@ -33,6 +33,7 @@ export type GenericFieldContextType = {
|
|||||||
displayedMaxRows?: number;
|
displayedMaxRows?: number;
|
||||||
isDisplayModeFixHeight?: boolean;
|
isDisplayModeFixHeight?: boolean;
|
||||||
isReadOnly: boolean;
|
isReadOnly: boolean;
|
||||||
|
disableChipClick?: boolean;
|
||||||
onOpenEditMode?: () => void;
|
onOpenEditMode?: () => void;
|
||||||
onCloseEditMode?: () => void;
|
onCloseEditMode?: () => void;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -9,7 +9,7 @@ export const ChipFieldDisplay = () => {
|
|||||||
objectNameSingular,
|
objectNameSingular,
|
||||||
labelIdentifierLink,
|
labelIdentifierLink,
|
||||||
isLabelIdentifierCompact,
|
isLabelIdentifierCompact,
|
||||||
isReadOnly,
|
disableChipClick,
|
||||||
} = useChipFieldDisplay();
|
} = useChipFieldDisplay();
|
||||||
|
|
||||||
if (!isDefined(recordValue)) {
|
if (!isDefined(recordValue)) {
|
||||||
@ -23,7 +23,7 @@ export const ChipFieldDisplay = () => {
|
|||||||
size={ChipSize.Small}
|
size={ChipSize.Small}
|
||||||
to={labelIdentifierLink}
|
to={labelIdentifierLink}
|
||||||
isLabelHidden={isLabelIdentifierCompact}
|
isLabelHidden={isLabelIdentifierCompact}
|
||||||
forceDisableClick={isReadOnly}
|
forceDisableClick={disableChipClick}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@ -15,7 +15,7 @@ import { pascalCase } from '~/utils/string/pascalCase';
|
|||||||
export const RelationFromManyFieldDisplay = () => {
|
export const RelationFromManyFieldDisplay = () => {
|
||||||
const { fieldValue, fieldDefinition } = useRelationFromManyFieldDisplay();
|
const { fieldValue, fieldDefinition } = useRelationFromManyFieldDisplay();
|
||||||
const { isFocused } = useFieldFocus();
|
const { isFocused } = useFieldFocus();
|
||||||
const { isReadOnly } = useContext(FieldContext);
|
const { disableChipClick } = useContext(FieldContext);
|
||||||
|
|
||||||
const { fieldName, objectMetadataNameSingular } = fieldDefinition.metadata;
|
const { fieldName, objectMetadataNameSingular } = fieldDefinition.metadata;
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ export const RelationFromManyFieldDisplay = () => {
|
|||||||
key={record.id}
|
key={record.id}
|
||||||
objectNameSingular={objectNameSingular}
|
objectNameSingular={objectNameSingular}
|
||||||
record={record[relationFieldName]}
|
record={record[relationFieldName]}
|
||||||
forceDisableClick={isReadOnly}
|
forceDisableClick={disableChipClick}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
@ -91,7 +91,7 @@ export const RelationFromManyFieldDisplay = () => {
|
|||||||
key={record.targetObject.id}
|
key={record.targetObject.id}
|
||||||
objectNameSingular={record.targetObjectMetadataItem.nameSingular}
|
objectNameSingular={record.targetObjectMetadataItem.nameSingular}
|
||||||
record={record.targetObject}
|
record={record.targetObject}
|
||||||
forceDisableClick={isReadOnly}
|
forceDisableClick={disableChipClick}
|
||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
</ExpandableList>
|
</ExpandableList>
|
||||||
@ -104,7 +104,7 @@ export const RelationFromManyFieldDisplay = () => {
|
|||||||
key={record.id}
|
key={record.id}
|
||||||
objectNameSingular={objectNameSingular}
|
objectNameSingular={objectNameSingular}
|
||||||
record={record}
|
record={record}
|
||||||
forceDisableClick={isReadOnly}
|
forceDisableClick={disableChipClick}
|
||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
</ExpandableList>
|
</ExpandableList>
|
||||||
|
|||||||
@ -9,7 +9,7 @@ export const RelationToOneFieldDisplay = () => {
|
|||||||
const { fieldValue, fieldDefinition, generateRecordChipData } =
|
const { fieldValue, fieldDefinition, generateRecordChipData } =
|
||||||
useRelationToOneFieldDisplay();
|
useRelationToOneFieldDisplay();
|
||||||
|
|
||||||
const { isReadOnly } = useContext(FieldContext);
|
const { disableChipClick } = useContext(FieldContext);
|
||||||
|
|
||||||
if (
|
if (
|
||||||
!isDefined(fieldValue) ||
|
!isDefined(fieldValue) ||
|
||||||
@ -28,7 +28,9 @@ export const RelationToOneFieldDisplay = () => {
|
|||||||
key={recordChipData.recordId}
|
key={recordChipData.recordId}
|
||||||
objectNameSingular={recordChipData.objectNameSingular}
|
objectNameSingular={recordChipData.objectNameSingular}
|
||||||
record={fieldValue}
|
record={fieldValue}
|
||||||
forceDisableClick={isWorkspaceMemberFieldMetadataRelation || isReadOnly}
|
forceDisableClick={
|
||||||
|
isWorkspaceMemberFieldMetadataRelation || disableChipClick
|
||||||
|
}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@ -18,7 +18,7 @@ export const useChipFieldDisplay = () => {
|
|||||||
isLabelIdentifier,
|
isLabelIdentifier,
|
||||||
labelIdentifierLink,
|
labelIdentifierLink,
|
||||||
isLabelIdentifierCompact,
|
isLabelIdentifierCompact,
|
||||||
isReadOnly,
|
disableChipClick,
|
||||||
} = useContext(FieldContext);
|
} = useContext(FieldContext);
|
||||||
|
|
||||||
const { chipGeneratorPerObjectPerField } = useContext(
|
const { chipGeneratorPerObjectPerField } = useContext(
|
||||||
@ -49,6 +49,6 @@ export const useChipFieldDisplay = () => {
|
|||||||
isLabelIdentifier,
|
isLabelIdentifier,
|
||||||
labelIdentifierLink,
|
labelIdentifierLink,
|
||||||
isLabelIdentifierCompact,
|
isLabelIdentifierCompact,
|
||||||
isReadOnly,
|
disableChipClick,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -153,7 +153,8 @@ export const SettingsDataModelFieldPreview = ({
|
|||||||
},
|
},
|
||||||
defaultValue: fieldMetadataItem.defaultValue,
|
defaultValue: fieldMetadataItem.defaultValue,
|
||||||
},
|
},
|
||||||
isReadOnly: true,
|
isReadOnly: false,
|
||||||
|
disableChipClick: true,
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{fieldMetadataItem.type === FieldMetadataType.BOOLEAN ? (
|
{fieldMetadataItem.type === FieldMetadataType.BOOLEAN ? (
|
||||||
|
|||||||
@ -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 { 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 { 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 { 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 { 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 { 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({
|
@WorkspaceQueryHook({
|
||||||
key: `calendarEvent.findMany`,
|
key: `calendarEvent.findMany`,
|
||||||
|
|||||||
Reference in New Issue
Block a user