diff --git a/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexBoardDataLoaderEffect.tsx b/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexBoardDataLoaderEffect.tsx index b7b31f73c..79c0e6068 100644 --- a/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexBoardDataLoaderEffect.tsx +++ b/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexBoardDataLoaderEffect.tsx @@ -3,6 +3,7 @@ import { useNavigate } from 'react-router-dom'; import { useRecoilValue, useSetRecoilState } from 'recoil'; import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem'; +import { getObjectSlug } from '@/object-metadata/utils/getObjectSlug'; import { useRecordActionBar } from '@/object-record/record-action-bar/hooks/useRecordActionBar'; import { useRecordBoard } from '@/object-record/record-board/hooks/useRecordBoard'; import { useRecordBoardSelection } from '@/object-record/record-board/hooks/useRecordBoardSelection'; @@ -59,10 +60,9 @@ export const RecordIndexBoardDataLoaderEffect = ({ }, [recordIndexFieldDefinitions, setFieldDefinitions]); const navigate = useNavigate(); - const navigateToSelectSettings = useCallback(() => { - navigate(`/settings/objects/${objectMetadataItem.namePlural}`); - }, [navigate, objectMetadataItem.namePlural]); + navigate(`/settings/objects/${getObjectSlug(objectMetadataItem)}`); + }, [navigate, objectMetadataItem]); const { resetRecordSelection } = useRecordBoardSelection(recordBoardId); diff --git a/packages/twenty-front/src/modules/object-record/record-table/record-table-header/components/RecordTableHeaderPlusButtonContent.tsx b/packages/twenty-front/src/modules/object-record/record-table/record-table-header/components/RecordTableHeaderPlusButtonContent.tsx index 2a19bc15f..3fd2cc60e 100644 --- a/packages/twenty-front/src/modules/object-record/record-table/record-table-header/components/RecordTableHeaderPlusButtonContent.tsx +++ b/packages/twenty-front/src/modules/object-record/record-table/record-table-header/components/RecordTableHeaderPlusButtonContent.tsx @@ -4,6 +4,7 @@ import styled from '@emotion/styled'; import { useRecoilValue } from 'recoil'; import { IconSettings, useIcons } from 'twenty-ui'; +import { getObjectSlug } from '@/object-metadata/utils/getObjectSlug'; import { FieldMetadata } from '@/object-record/record-field/types/FieldMetadata'; import { RecordTableContext } from '@/object-record/record-table/contexts/RecordTableContext'; import { useRecordTableStates } from '@/object-record/record-table/hooks/internal/useRecordTableStates'; @@ -57,7 +58,7 @@ export const RecordTableHeaderPlusButtonContent = () => { )} diff --git a/packages/twenty-front/src/modules/settings/data-model/graph-overview/components/SettingsDataModelOverviewObject.tsx b/packages/twenty-front/src/modules/settings/data-model/graph-overview/components/SettingsDataModelOverviewObject.tsx index 2c01bcb9f..ff80c147e 100644 --- a/packages/twenty-front/src/modules/settings/data-model/graph-overview/components/SettingsDataModelOverviewObject.tsx +++ b/packages/twenty-front/src/modules/settings/data-model/graph-overview/components/SettingsDataModelOverviewObject.tsx @@ -5,6 +5,7 @@ import styled from '@emotion/styled'; import { IconChevronDown, useIcons } from 'twenty-ui'; import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; +import { getObjectSlug } from '@/object-metadata/utils/getObjectSlug'; import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords'; import { ObjectFieldRow } from '@/settings/data-model/graph-overview/components/SettingsDataModelOverviewField'; import { SettingsDataModelObjectTypeTag } from '@/settings/data-model/objects/SettingsDataModelObjectTypeTag'; @@ -111,7 +112,7 @@ export const SettingsDataModelOverviewObject = ({ {}} onMouseLeave={() => {}}> - + {Icon && } {capitalize(data.namePlural)} diff --git a/packages/twenty-front/src/modules/views/view-picker/hooks/useGetAvailableFieldsForKanban.ts b/packages/twenty-front/src/modules/views/view-picker/hooks/useGetAvailableFieldsForKanban.ts index 9b4ddbe2c..0f47fcc78 100644 --- a/packages/twenty-front/src/modules/views/view-picker/hooks/useGetAvailableFieldsForKanban.ts +++ b/packages/twenty-front/src/modules/views/view-picker/hooks/useGetAvailableFieldsForKanban.ts @@ -3,6 +3,7 @@ import { useLocation, useNavigate } from 'react-router-dom'; import { useRecoilValue, useSetRecoilState } from 'recoil'; import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState'; +import { getObjectSlug } from '@/object-metadata/utils/getObjectSlug'; import { navigationMemorizedUrlState } from '@/ui/navigation/states/navigationMemorizedUrlState'; import { useViewStates } from '@/views/hooks/internal/useViewStates'; import { FieldMetadataType } from '~/generated-metadata/graphql'; @@ -34,16 +35,19 @@ export const useGetAvailableFieldsForKanban = () => { if (isDefined(objectMetadataItem?.namePlural)) { navigate( - `/settings/objects/${objectMetadataItem?.namePlural}/new-field/step-2`, + `/settings/objects/${getObjectSlug( + objectMetadataItem, + )}/new-field/step-2`, ); } else { navigate(`/settings/objects`); } }, [ - navigate, - objectMetadataItem?.namePlural, setNavigationMemorizedUrl, - location, + location.pathname, + location.search, + objectMetadataItem, + navigate, ]); return {