diff --git a/packages/twenty-front/src/modules/object-record/record-index/options/components/RecordIndexOptionsDropdownContent.tsx b/packages/twenty-front/src/modules/object-record/record-index/options/components/RecordIndexOptionsDropdownContent.tsx index 70bcb43cb..2a3e3d67e 100644 --- a/packages/twenty-front/src/modules/object-record/record-index/options/components/RecordIndexOptionsDropdownContent.tsx +++ b/packages/twenty-front/src/modules/object-record/record-index/options/components/RecordIndexOptionsDropdownContent.tsx @@ -11,6 +11,7 @@ import { IconTag, } from 'twenty-ui'; +import { useObjectNamePluralFromSingular } from '@/object-metadata/hooks/useObjectNamePluralFromSingular'; import { RECORD_INDEX_OPTIONS_DROPDOWN_ID } from '@/object-record/record-index/options/constants/RecordIndexOptionsDropdownId'; import { displayedExportProgress, @@ -27,6 +28,7 @@ import { DropdownMenuItemsContainer } from '@/ui/layout/dropdown/components/Drop import { DropdownMenuSeparator } from '@/ui/layout/dropdown/components/DropdownMenuSeparator'; import { useDropdown } from '@/ui/layout/dropdown/hooks/useDropdown'; import { MenuItem } from '@/ui/navigation/menu-item/components/MenuItem'; +import { MenuItemNavigate } from '@/ui/navigation/menu-item/components/MenuItemNavigate'; import { MenuItemToggle } from '@/ui/navigation/menu-item/components/MenuItemToggle'; import { useScopedHotkeys } from '@/ui/utilities/hotkey/hooks/useScopedHotkeys'; import { ViewFieldsVisibilityDropdownSection } from '@/views/components/ViewFieldsVisibilityDropdownSection'; @@ -62,8 +64,16 @@ export const RecordIndexOptionsDropdownContent = ({ setCurrentMenu(option); }; + const { objectNamePlural } = useObjectNamePluralFromSingular({ + objectNameSingular: objectNameSingular, + }); + const handleEditClick = () => { - navigate(getSettingsPagePath(SettingsPath.Objects)); + navigate( + getSettingsPagePath(SettingsPath.ObjectDetail, { + objectSlug: objectNamePlural, + }), + ); }; useScopedHotkeys( @@ -146,7 +156,6 @@ export const RecordIndexOptionsDropdownContent = ({ Fields - - handleSelectMenu('hiddenFields')} - LeftIcon={IconEyeOff} - text="Hidden Fields" - /> + + handleSelectMenu('hiddenFields')} + LeftIcon={IconEyeOff} + text="Hidden Fields" + /> + )} {currentMenu === 'hiddenFields' && ( @@ -171,7 +182,6 @@ export const RecordIndexOptionsDropdownContent = ({ > Hidden Fields - {hiddenRecordFields.length > 0 && ( <> )} - + + + )} diff --git a/packages/twenty-front/src/modules/settings/utils/getSettingsPagePath.ts b/packages/twenty-front/src/modules/settings/utils/getSettingsPagePath.ts index 11c12d61f..996d90a35 100644 --- a/packages/twenty-front/src/modules/settings/utils/getSettingsPagePath.ts +++ b/packages/twenty-front/src/modules/settings/utils/getSettingsPagePath.ts @@ -1,4 +1,19 @@ import { SettingsPath } from '@/types/SettingsPath'; +import { isDefined } from '~/utils/isDefined'; -export const getSettingsPagePath = (path: Path) => - `/settings/${path}` as const; +type PathParams = { + objectSlug?: string; +}; + +export const getSettingsPagePath = ( + path: Path, + params?: PathParams, +) => { + let resultPath = `/settings/${path}`; + + if (isDefined(params?.objectSlug)) { + resultPath = resultPath.replace(':objectSlug', params.objectSlug); + } + + return resultPath; +};