diff --git a/packages/twenty-front/src/modules/action-menu/components/__stories__/RecordIndexActionMenuBar.stories.tsx b/packages/twenty-front/src/modules/action-menu/components/__stories__/RecordIndexActionMenuBar.stories.tsx index 52fc501dc..c12736e99 100644 --- a/packages/twenty-front/src/modules/action-menu/components/__stories__/RecordIndexActionMenuBar.stories.tsx +++ b/packages/twenty-front/src/modules/action-menu/components/__stories__/RecordIndexActionMenuBar.stories.tsx @@ -11,6 +11,7 @@ import { contextStoreNumberOfSelectedRecordsComponentState } from '@/context-sto import { contextStoreTargetedRecordsRuleComponentState } from '@/context-store/states/contextStoreTargetedRecordsRuleComponentState'; import { ContextStoreComponentInstanceContext } from '@/context-store/states/contexts/ContextStoreComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { isBottomBarOpenedComponentState } from '@/ui/layout/bottom-bar/states/isBottomBarOpenedComponentState'; import { msg } from '@lingui/core/macro'; import { expect, jest } from '@storybook/jest'; @@ -32,59 +33,63 @@ const meta: Meta = { - - { - set( - contextStoreTargetedRecordsRuleComponentState.atomFamily({ - instanceId: 'story-action-menu', - }), - { - mode: 'selection', - selectedRecordIds: ['1', '2', '3'], - }, - ); - set( - contextStoreNumberOfSelectedRecordsComponentState.atomFamily({ - instanceId: 'story-action-menu', - }), - 3, - ); - const map = new Map(); - map.set('delete', { - isPinned: true, - scope: ActionMenuEntryScope.RecordSelection, - type: ActionMenuEntryType.Standard, - key: 'delete', - label: msg`Delete`, - position: 0, - Icon: IconTrash, - onClick: deleteMock, - }); - set( - actionMenuEntriesComponentState.atomFamily({ - instanceId: 'story-action-menu', - }), - map, - ); - set( - isBottomBarOpenedComponentState.atomFamily({ - instanceId: - getActionBarIdFromActionMenuId('story-action-menu'), - }), - true, - ); - }} + - { + set( + contextStoreTargetedRecordsRuleComponentState.atomFamily({ + instanceId: 'story-action-menu', + }), + { + mode: 'selection', + selectedRecordIds: ['1', '2', '3'], + }, + ); + set( + contextStoreNumberOfSelectedRecordsComponentState.atomFamily({ + instanceId: 'story-action-menu', + }), + 3, + ); + const map = new Map(); + map.set('delete', { + isPinned: true, + scope: ActionMenuEntryScope.RecordSelection, + type: ActionMenuEntryType.Standard, + key: 'delete', + label: msg`Delete`, + position: 0, + Icon: IconTrash, + onClick: deleteMock, + }); + set( + actionMenuEntriesComponentState.atomFamily({ + instanceId: 'story-action-menu', + }), + map, + ); + set( + isBottomBarOpenedComponentState.atomFamily({ + instanceId: + getActionBarIdFromActionMenuId('story-action-menu'), + }), + true, + ); + }} > - - - - + + + + + + ), ], diff --git a/packages/twenty-front/src/modules/command-menu/components/CommandMenuContainer.tsx b/packages/twenty-front/src/modules/command-menu/components/CommandMenuContainer.tsx index 60df5e421..7cd67015b 100644 --- a/packages/twenty-front/src/modules/command-menu/components/CommandMenuContainer.tsx +++ b/packages/twenty-front/src/modules/command-menu/components/CommandMenuContainer.tsx @@ -14,6 +14,7 @@ import { isCommandMenuOpenedState } from '@/command-menu/states/isCommandMenuOpe import { CommandMenuAnimationVariant } from '@/command-menu/types/CommandMenuAnimationVariant'; import { ContextStoreComponentInstanceContext } from '@/context-store/states/contexts/ContextStoreComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { AppHotkeyScope } from '@/ui/utilities/hotkey/types/AppHotkeyScope'; import { useListenClickOutside } from '@/ui/utilities/pointer-event/hooks/useListenClickOutside'; import { workflowReactFlowRefState } from '@/workflow/workflow-diagram/states/workflowReactFlowRefState'; @@ -86,54 +87,60 @@ export const CommandMenuContainer = ({ - - - { - if ( - key !== RecordAgnosticActionsKey.SEARCH_RECORDS && - key !== RecordAgnosticActionsKey.SEARCH_RECORDS_FALLBACK && - key !== NoSelectionRecordActionKeys.CREATE_NEW_RECORD - ) { - toggleCommandMenu(); - } - if (key !== RecordAgnosticActionsKey.SEARCH_RECORDS_FALLBACK) { - setCommandMenuSearch(''); - } - }, - }} + - - - {isWorkflowEnabled && ( - - )} - - - {isCommandMenuOpened && ( - - {children} - + { + if ( + key !== RecordAgnosticActionsKey.SEARCH_RECORDS && + key !== RecordAgnosticActionsKey.SEARCH_RECORDS_FALLBACK && + key !== NoSelectionRecordActionKeys.CREATE_NEW_RECORD + ) { + toggleCommandMenu(); + } + if ( + key !== RecordAgnosticActionsKey.SEARCH_RECORDS_FALLBACK + ) { + setCommandMenuSearch(''); + } + }, + }} + > + + + {isWorkflowEnabled && ( + )} - - - - + + + {isCommandMenuOpened && ( + + {children} + + )} + + + + + ); }; diff --git a/packages/twenty-front/src/modules/command-menu/components/__stories__/CommandMenu.stories.tsx b/packages/twenty-front/src/modules/command-menu/components/__stories__/CommandMenu.stories.tsx index 417435f23..164ef4da1 100644 --- a/packages/twenty-front/src/modules/command-menu/components/__stories__/CommandMenu.stories.tsx +++ b/packages/twenty-front/src/modules/command-menu/components/__stories__/CommandMenu.stories.tsx @@ -21,6 +21,7 @@ import { isCommandMenuOpenedState } from '@/command-menu/states/isCommandMenuOpe import { CommandMenuPages } from '@/command-menu/types/CommandMenuPages'; import { ContextStoreComponentInstanceContext } from '@/context-store/states/contexts/ContextStoreComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { HttpResponse, graphql } from 'msw'; import { IconDotsVertical } from 'twenty-ui'; import { FeatureFlagKey } from '~/generated/graphql'; @@ -52,17 +53,21 @@ const ContextStoreDecorator: Decorator = (Story) => { - - - - - - - + + + + + + + ); }; diff --git a/packages/twenty-front/src/modules/object-record/object-filter-dropdown/components/__stories__/MultipleFiltersDropdownButton.stories.tsx b/packages/twenty-front/src/modules/object-record/object-filter-dropdown/components/__stories__/MultipleFiltersDropdownButton.stories.tsx index a73505d69..8b4b6c807 100644 --- a/packages/twenty-front/src/modules/object-record/object-filter-dropdown/components/__stories__/MultipleFiltersDropdownButton.stories.tsx +++ b/packages/twenty-front/src/modules/object-record/object-filter-dropdown/components/__stories__/MultipleFiltersDropdownButton.stories.tsx @@ -8,6 +8,7 @@ import { MultipleFiltersDropdownButton } from '@/object-record/object-filter-dro import { ObjectFilterDropdownComponentInstanceContext } from '@/object-record/object-filter-dropdown/states/contexts/ObjectFilterDropdownComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; import { RecordIndexContextProvider } from '@/object-record/record-index/contexts/RecordIndexContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { RecordTableComponentInstanceContext } from '@/object-record/record-table/states/context/RecordTableComponentInstanceContext'; import { tableColumnsComponentState } from '@/object-record/record-table/states/tableColumnsComponentState'; import { useSetRecoilComponentStateV2 } from '@/ui/utilities/state/component-state/hooks/useSetRecoilComponentStateV2'; @@ -65,17 +66,21 @@ const meta: Meta = { - - {} }} + - - - - - + {} }} + > + + + + + + ); diff --git a/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/__stories__/ObjectOptionsDropdownContent.stories.tsx b/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/__stories__/ObjectOptionsDropdownContent.stories.tsx index 94251ab53..402b888d6 100644 --- a/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/__stories__/ObjectOptionsDropdownContent.stories.tsx +++ b/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/__stories__/ObjectOptionsDropdownContent.stories.tsx @@ -8,6 +8,7 @@ import { ObjectOptionsDropdownContext } from '@/object-record/object-options-dro import { ObjectOptionsContentId } from '@/object-record/object-options-dropdown/types/ObjectOptionsContentId'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; import { RecordIndexContextProvider } from '@/object-record/record-index/contexts/RecordIndexContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { RecordTableComponentInstanceContext } from '@/object-record/record-table/states/context/RecordTableComponentInstanceContext'; import { DropdownMenu } from '@/ui/layout/dropdown/components/DropdownMenu'; import { ViewComponentInstanceContext } from '@/views/states/contexts/ViewComponentInstanceContext'; @@ -38,21 +39,21 @@ const meta: Meta = { }, [setObjectMetadataItems]); return ( - - {} }} - > - - - - - - + + + {} }} + > + + + + + + + ); }, diff --git a/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexContainerGater.tsx b/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexContainerGater.tsx index 5c66bfe52..e40bd3952 100644 --- a/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexContainerGater.tsx +++ b/packages/twenty-front/src/modules/object-record/record-index/components/RecordIndexContainerGater.tsx @@ -12,6 +12,7 @@ import { RecordIndexContainerContextStoreNumberOfSelectedRecordsEffect } from '@ import { RecordIndexLoadBaseOnContextStoreEffect } from '@/object-record/record-index/components/RecordIndexLoadBaseOnContextStoreEffect'; import { RecordIndexPageHeader } from '@/object-record/record-index/components/RecordIndexPageHeader'; import { useHandleIndexIdentifierClick } from '@/object-record/record-index/hooks/useHandleIndexIdentifierClick'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { PageBody } from '@/ui/layout/page/components/PageBody'; import { PageTitle } from '@/ui/utilities/page-title/components/PageTitle'; import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2'; @@ -72,22 +73,26 @@ export const RecordIndexContainerGater = () => { - - - - - - - - - - + + + + + + + + + + + diff --git a/packages/twenty-front/src/modules/object-record/record-right-drawer/components/RightDrawerRecord.tsx b/packages/twenty-front/src/modules/object-record/record-right-drawer/components/RightDrawerRecord.tsx index 0a8757ce6..4b297a5ea 100644 --- a/packages/twenty-front/src/modules/object-record/record-right-drawer/components/RightDrawerRecord.tsx +++ b/packages/twenty-front/src/modules/object-record/record-right-drawer/components/RightDrawerRecord.tsx @@ -8,6 +8,7 @@ import { viewableRecordIdState } from '@/object-record/record-right-drawer/state import { viewableRecordNameSingularState } from '@/object-record/record-right-drawer/states/viewableRecordNameSingularState'; import { RecordShowContainer } from '@/object-record/record-show/components/RecordShowContainer'; import { useRecordShowPage } from '@/object-record/record-show/hooks/useRecordShowPage'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { RecordValueSetterEffect } from '@/object-record/record-store/components/RecordValueSetterEffect'; import { RecordFieldValueSelectorContextProvider } from '@/object-record/record-store/contexts/RecordFieldValueSelectorContext'; import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile'; @@ -46,30 +47,34 @@ export const RightDrawerRecord = () => { - - - - - {!isNewViewableRecordLoading && ( - - )} - - - - - + + + + {!isNewViewableRecordLoading && ( + + )} + + + + + + ); }; diff --git a/packages/twenty-front/src/modules/object-record/record-sort/states/context/RecordSortsComponentInstanceContext.ts b/packages/twenty-front/src/modules/object-record/record-sort/states/context/RecordSortsComponentInstanceContext.ts new file mode 100644 index 000000000..eff40802c --- /dev/null +++ b/packages/twenty-front/src/modules/object-record/record-sort/states/context/RecordSortsComponentInstanceContext.ts @@ -0,0 +1,4 @@ +import { createComponentInstanceContext } from '@/ui/utilities/state/component-state/utils/createComponentInstanceContext'; + +export const RecordSortsComponentInstanceContext = + createComponentInstanceContext(); diff --git a/packages/twenty-front/src/modules/object-record/record-sort/states/currentRecordSortsComponentState.ts b/packages/twenty-front/src/modules/object-record/record-sort/states/currentRecordSortsComponentState.ts new file mode 100644 index 000000000..560e37496 --- /dev/null +++ b/packages/twenty-front/src/modules/object-record/record-sort/states/currentRecordSortsComponentState.ts @@ -0,0 +1,11 @@ +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; +import { RecordSort } from '@/object-record/record-sort/types/RecordSort'; +import { createComponentStateV2 } from '@/ui/utilities/state/component-state/utils/createComponentStateV2'; + +export const currentRecordSortsComponentState = createComponentStateV2< + RecordSort[] +>({ + key: 'currentRecordSortsComponentState', + defaultValue: [], + componentInstanceContext: RecordSortsComponentInstanceContext, +}); diff --git a/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSort.ts b/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSort.ts new file mode 100644 index 000000000..33abca425 --- /dev/null +++ b/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSort.ts @@ -0,0 +1,9 @@ +import { SortDefinition } from '@/object-record/object-sort-dropdown/types/SortDefinition'; +import { RecordSortDirection } from '@/object-record/record-sort/types/RecordSortDirection'; + +export type RecordSort = { + id: string; + fieldMetadataId: string; + direction: RecordSortDirection; + definition: SortDefinition; +}; diff --git a/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSortDirection.ts b/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSortDirection.ts new file mode 100644 index 000000000..2f65492cc --- /dev/null +++ b/packages/twenty-front/src/modules/object-record/record-sort/types/RecordSortDirection.ts @@ -0,0 +1,3 @@ +export const RECORD_SORT_DIRECTIONS = ['asc', 'desc'] as const; + +export type RecordSortDirection = (typeof RECORD_SORT_DIRECTIONS)[number]; diff --git a/packages/twenty-front/src/modules/sign-in-background-mock/components/SignInBackgroundMockContainer.tsx b/packages/twenty-front/src/modules/sign-in-background-mock/components/SignInBackgroundMockContainer.tsx index e950bb791..320fa6763 100644 --- a/packages/twenty-front/src/modules/sign-in-background-mock/components/SignInBackgroundMockContainer.tsx +++ b/packages/twenty-front/src/modules/sign-in-background-mock/components/SignInBackgroundMockContainer.tsx @@ -6,6 +6,7 @@ import { ContextStoreComponentInstanceContext } from '@/context-store/states/con import { objectMetadataItemsState } from '@/object-metadata/states/objectMetadataItemsState'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; import { RecordIndexContextProvider } from '@/object-record/record-index/contexts/RecordIndexContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { RecordTableWithWrappers } from '@/object-record/record-table/components/RecordTableWithWrappers'; import { SignInBackgroundMockContainerEffect } from '@/sign-in-background-mock/components/SignInBackgroundMockContainerEffect'; import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2'; @@ -52,36 +53,40 @@ export const SignInBackgroundMockContainer = () => { - - - - {isDefined(objectMetadataItem) && ( - <> - } - /> + + + {isDefined(objectMetadataItem) && ( + <> + } + /> - {}} - /> - - )} - - + {}} + /> + + )} + + + diff --git a/packages/twenty-front/src/modules/views/utils/__tests__/viewMapFunctions.test.ts b/packages/twenty-front/src/modules/views/utils/__tests__/viewMapFunctions.test.ts index 396efd6ee..bb39143d5 100644 --- a/packages/twenty-front/src/modules/views/utils/__tests__/viewMapFunctions.test.ts +++ b/packages/twenty-front/src/modules/views/utils/__tests__/viewMapFunctions.test.ts @@ -73,6 +73,8 @@ describe('mapViewFiltersToFilters', () => { operand: ViewFilterOperand.Is, label: baseFieldMetadataItem.label, type: FieldMetadataType.FULL_NAME, + positionInViewFilterGroup: undefined, + viewFilterGroupId: undefined, }, ]; expect( diff --git a/packages/twenty-front/src/pages/object-record/RecordShowPage.tsx b/packages/twenty-front/src/pages/object-record/RecordShowPage.tsx index c4626d4e3..aa2ccedb2 100644 --- a/packages/twenty-front/src/pages/object-record/RecordShowPage.tsx +++ b/packages/twenty-front/src/pages/object-record/RecordShowPage.tsx @@ -8,6 +8,7 @@ import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSi import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; import { RecordShowContainer } from '@/object-record/record-show/components/RecordShowContainer'; import { useRecordShowPage } from '@/object-record/record-show/hooks/useRecordShowPage'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { RecordValueSetterEffect } from '@/object-record/record-store/components/RecordValueSetterEffect'; import { RecordFieldValueSelectorContextProvider } from '@/object-record/record-store/contexts/RecordFieldValueSelectorContext'; import { PageBody } from '@/ui/layout/page/components/PageBody'; @@ -50,64 +51,69 @@ export const RecordShowPage = () => { - - - - - - - <> - {!isCommandMenuV2Enabled && - objectNameSingular === CoreObjectNameSingular.Workflow && ( - - )} - {!isCommandMenuV2Enabled && - objectNameSingular === - CoreObjectNameSingular.WorkflowVersion && ( - - )} - {(isCommandMenuV2Enabled || - (objectNameSingular !== CoreObjectNameSingular.Workflow && - objectNameSingular !== - CoreObjectNameSingular.WorkflowVersion)) && ( - - )} - - - - + + + + - - - - - - + <> + {!isCommandMenuV2Enabled && + objectNameSingular === + CoreObjectNameSingular.Workflow && ( + + )} + {!isCommandMenuV2Enabled && + objectNameSingular === + CoreObjectNameSingular.WorkflowVersion && ( + + )} + {(isCommandMenuV2Enabled || + (objectNameSingular !== CoreObjectNameSingular.Workflow && + objectNameSingular !== + CoreObjectNameSingular.WorkflowVersion)) && ( + + )} + + + + + + + + + + + ); diff --git a/packages/twenty-front/src/testing/decorators/PageDecorator.tsx b/packages/twenty-front/src/testing/decorators/PageDecorator.tsx index e1a5db568..1f3ea7dbe 100644 --- a/packages/twenty-front/src/testing/decorators/PageDecorator.tsx +++ b/packages/twenty-front/src/testing/decorators/PageDecorator.tsx @@ -23,6 +23,7 @@ import { mockedApolloClient } from '~/testing/mockedApolloClient'; import { RecoilDebugObserverEffect } from '@/debug/components/RecoilDebugObserver'; import { ObjectMetadataItemsProvider } from '@/object-metadata/components/ObjectMetadataItemsProvider'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { PrefetchDataProvider } from '@/prefetch/components/PrefetchDataProvider'; import { WorkspaceProviderEffect } from '@/workspace/components/WorkspaceProviderEffect'; import { i18n } from '@lingui/core'; @@ -95,7 +96,13 @@ const Providers = () => { instanceId: 'storybook-test-record-filters', }} > - + + + diff --git a/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksAndActionMenuWrapper.tsx b/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksAndActionMenuWrapper.tsx index aa7eaa19d..13e3e943a 100644 --- a/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksAndActionMenuWrapper.tsx +++ b/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksAndActionMenuWrapper.tsx @@ -2,6 +2,7 @@ import { ActionMenuComponentInstanceContext } from '@/action-menu/states/context import { ContextStoreComponentInstanceContext } from '@/context-store/states/contexts/ContextStoreComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; import { RecordIndexContextProvider } from '@/object-record/record-index/contexts/RecordIndexContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { MockedResponse } from '@apollo/client/testing'; import { ReactNode } from 'react'; import { MutableSnapshot } from 'recoil'; @@ -54,41 +55,45 @@ export const getJestMetadataAndApolloMocksAndActionMenuWrapper = ({ instanceId: componentInstanceId, }} > - - - 'indexIdentifierUrl', - onIndexRecordsLoaded: () => {}, - objectNamePlural: mockObjectMetadataItem.namePlural, - objectNameSingular: mockObjectMetadataItem.nameSingular, - objectMetadataItem: mockObjectMetadataItem, - recordIndexId: 'recordIndexId', + instanceId: componentInstanceId, }} > - 'indexIdentifierUrl', + onIndexRecordsLoaded: () => {}, + objectNamePlural: mockObjectMetadataItem.namePlural, + objectNameSingular: mockObjectMetadataItem.nameSingular, + objectMetadataItem: mockObjectMetadataItem, + recordIndexId: 'recordIndexId', + }} > - {children} - - - - + + {children} + + + + + ); diff --git a/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksWrapper.tsx b/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksWrapper.tsx index 25c454e9c..a36592d2a 100644 --- a/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksWrapper.tsx +++ b/packages/twenty-front/src/testing/jest/getJestMetadataAndApolloMocksWrapper.tsx @@ -4,6 +4,7 @@ import { MutableSnapshot, RecoilRoot } from 'recoil'; import { ContextStoreComponentInstanceContext } from '@/context-store/states/contexts/ContextStoreComponentInstanceContext'; import { RecordFiltersComponentInstanceContext } from '@/object-record/record-filter/states/context/RecordFiltersComponentInstanceContext'; +import { RecordSortsComponentInstanceContext } from '@/object-record/record-sort/states/context/RecordSortsComponentInstanceContext'; import { SnackBarProviderScope } from '@/ui/feedback/snack-bar-manager/scopes/SnackBarProviderScope'; import { ViewComponentInstanceContext } from '@/views/states/contexts/ViewComponentInstanceContext'; import { InMemoryCache } from '@apollo/client'; @@ -28,17 +29,21 @@ export const getJestMetadataAndApolloMocksWrapper = ({ - - - - {children} - - - + + + + {children} + + + +