diff --git a/packages/twenty-front/src/modules/object-metadata/hooks/__tests__/useColumnDefinitionsFromFieldMetadata.test.ts b/packages/twenty-front/src/modules/object-metadata/hooks/__tests__/useColumnDefinitionsFromFieldMetadata.test.ts index 65b3de83d..550fb95dc 100644 --- a/packages/twenty-front/src/modules/object-metadata/hooks/__tests__/useColumnDefinitionsFromFieldMetadata.test.ts +++ b/packages/twenty-front/src/modules/object-metadata/hooks/__tests__/useColumnDefinitionsFromFieldMetadata.test.ts @@ -1,5 +1,4 @@ import { renderHook } from '@testing-library/react'; -import { Nullable } from 'twenty-ui'; import { currentWorkspaceState } from '@/auth/states/currentWorkspaceState'; import { useColumnDefinitionsFromFieldMetadata } from '@/object-metadata/hooks/useColumnDefinitionsFromFieldMetadata'; @@ -49,29 +48,13 @@ const Wrapper = getJestMetadataAndApolloMocksAndActionMenuWrapper({ }); describe('useColumnDefinitionsFromFieldMetadata', () => { - it('should return empty definitions if no object is passed', () => { - const { result } = renderHook( - (objectMetadataItem?: Nullable) => { - return useColumnDefinitionsFromFieldMetadata(objectMetadataItem); - }, - { - wrapper: Wrapper, - }, - ); - - expect(Array.isArray(result.current.columnDefinitions)).toBe(true); - expect(Array.isArray(result.current.sortDefinitions)).toBe(true); - expect(result.current.columnDefinitions.length).toBe(0); - expect(result.current.sortDefinitions.length).toBe(0); - }); - it('should return expected definitions', () => { const companyObjectMetadata = generatedMockObjectMetadataItems.find( (item) => item.nameSingular === 'company', ); const { result } = renderHook( - (objectMetadataItem?: Nullable) => { + (objectMetadataItem: ObjectMetadataItem) => { return useColumnDefinitionsFromFieldMetadata(objectMetadataItem); }, { diff --git a/packages/twenty-front/src/modules/object-metadata/hooks/useColumnDefinitionsFromFieldMetadata.ts b/packages/twenty-front/src/modules/object-metadata/hooks/useColumnDefinitionsFromFieldMetadata.ts index 07fc72adc..e1b50dc6d 100644 --- a/packages/twenty-front/src/modules/object-metadata/hooks/useColumnDefinitionsFromFieldMetadata.ts +++ b/packages/twenty-front/src/modules/object-metadata/hooks/useColumnDefinitionsFromFieldMetadata.ts @@ -1,17 +1,17 @@ import { useMemo } from 'react'; -import { Nullable } from 'twenty-ui'; import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; import { FieldMetadata } from '@/object-record/record-field/types/FieldMetadata'; import { ColumnDefinition } from '@/object-record/record-table/types/ColumnDefinition'; import { filterAvailableTableColumns } from '@/object-record/utils/filterAvailableTableColumns'; -import { useFilterableFieldMetadataItemsInRecordIndexContext } from '@/object-record/record-filter/hooks/useFilterableFieldMetadataItemsInRecordIndexContext'; +import { availableFieldMetadataItemsForFilterFamilySelector } from '@/object-metadata/states/availableFieldMetadataItemsForFilterFamilySelector'; +import { useRecoilValue } from 'recoil'; import { formatFieldMetadataItemAsColumnDefinition } from '../utils/formatFieldMetadataItemAsColumnDefinition'; import { formatFieldMetadataItemsAsSortDefinitions } from '../utils/formatFieldMetadataItemsAsSortDefinitions'; export const useColumnDefinitionsFromFieldMetadata = ( - objectMetadataItem?: Nullable, + objectMetadataItem: ObjectMetadataItem, ) => { const activeFieldMetadataItems = useMemo( () => @@ -23,8 +23,11 @@ export const useColumnDefinitionsFromFieldMetadata = ( [objectMetadataItem], ); - const { filterableFieldMetadataItems } = - useFilterableFieldMetadataItemsInRecordIndexContext(); + const filterableFieldMetadataItems = useRecoilValue( + availableFieldMetadataItemsForFilterFamilySelector({ + objectMetadataItemId: objectMetadataItem.id, + }), + ); const sortDefinitions = formatFieldMetadataItemsAsSortDefinitions({ fields: activeFieldMetadataItems,