diff --git a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/ArrayFieldMenuItem.tsx b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/ArrayFieldMenuItem.tsx
index dce319d0f..6501a5328 100644
--- a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/ArrayFieldMenuItem.tsx
+++ b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/ArrayFieldMenuItem.tsx
@@ -21,7 +21,8 @@ export const ArrayFieldMenuItem = ({
onEdit={onEdit}
onDelete={onDelete}
DisplayComponent={() => }
- hasPrimaryButton={false}
+ showPrimaryIcon={false}
+ showSetAsPrimaryButton={false}
/>
);
};
diff --git a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/EmailsFieldInput.tsx b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/EmailsFieldInput.tsx
index 99371d125..aa3ef4376 100644
--- a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/EmailsFieldInput.tsx
+++ b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/EmailsFieldInput.tsx
@@ -77,7 +77,8 @@ export const EmailsFieldInput = ({
void;
onSetAsPrimary?: () => void;
onDelete?: () => void;
email: string;
+ showPrimaryIcon: boolean;
+ showSetAsPrimaryButton: boolean;
};
export const EmailsFieldMenuItem = ({
dropdownId,
- isPrimary,
onEdit,
onSetAsPrimary,
onDelete,
email,
+ showPrimaryIcon,
+ showSetAsPrimaryButton,
}: EmailsFieldMenuItemProps) => {
return (
);
};
diff --git a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/LinksFieldInput.tsx b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/LinksFieldInput.tsx
index e38906ed5..24faf715a 100644
--- a/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/LinksFieldInput.tsx
+++ b/packages/twenty-front/src/modules/object-record/record-field/meta-types/input/components/LinksFieldInput.tsx
@@ -38,7 +38,8 @@ export const LinksFieldInput = ({
});
};
- const isPrimaryLink = (index: number) => index === 0 && links?.length > 1;
+ const getShowPrimaryIcon = (index: number) => index === 0 && links.length > 1;
+ const getShowSetAsPrimaryButton = (index: number) => index > 0;
const setIsFieldInError = useSetRecoilComponentStateV2(
recordFieldInputIsFieldInErrorComponentState,
@@ -75,7 +76,8 @@ export const LinksFieldInput = ({
void;
onSetAsPrimary?: () => void;
onDelete?: () => void;
+ showPrimaryIcon: boolean;
+ showSetAsPrimaryButton: boolean;
};
export const LinksFieldMenuItem = ({
dropdownId,
- isPrimary,
label,
onEdit,
onSetAsPrimary,
onDelete,
url,
+ showPrimaryIcon,
+ showSetAsPrimaryButton,
}: LinksFieldMenuItemProps) => {
return (
= {
dropdownId: string;
- isPrimary?: boolean;
value: T;
onEdit?: () => void;
onSetAsPrimary?: () => void;
onDelete?: () => void;
DisplayComponent: React.ComponentType<{ value: T }>;
- hasPrimaryButton?: boolean;
+ showPrimaryIcon: boolean;
+ showSetAsPrimaryButton: boolean;
};
export const MultiItemFieldMenuItem = ({
dropdownId,
- isPrimary,
value,
onEdit,
onSetAsPrimary,
onDelete,
DisplayComponent,
- hasPrimaryButton = true,
+ showPrimaryIcon,
+ showSetAsPrimaryButton,
}: MultiItemFieldMenuItemProps) => {
const [isHovered, setIsHovered] = useState(false);
const { isDropdownOpen, closeDropdown } = useDropdown(dropdownId);
@@ -69,12 +69,12 @@ export const MultiItemFieldMenuItem = ({
onMouseEnter={handleMouseEnter}
onMouseLeave={handleMouseLeave}
text={}
- isIconDisplayedOnHoverOnly={!isPrimary && !isDropdownOpen}
- RightIcon={!isHovered && isPrimary ? IconBookmark : null}
+ isIconDisplayedOnHoverOnly={!showPrimaryIcon && !isDropdownOpen}
+ RightIcon={!isHovered && showPrimaryIcon ? IconBookmark : null}
dropdownId={dropdownId}
dropdownContent={
- {hasPrimaryButton && !isPrimary && (
+ {showSetAsPrimaryButton && (