diff --git a/front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts b/front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts
index 8609f7417..2911fe623 100644
--- a/front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts
+++ b/front/src/modules/object-metadata/utils/formatFieldMetadataItemsAsFilterDefinitions.ts
@@ -46,6 +46,10 @@ const formatFieldMetadataItemAsFilterDefinition = ({
fieldMetadataId: field.id,
label: field.label,
iconName: field.icon ?? 'Icon123',
+ relationObjectMetadataNamePlural:
+ field.toRelationMetadata?.fromObjectMetadata.namePlural,
+ relationObjectMetadataNameSingular:
+ field.toRelationMetadata?.fromObjectMetadata.nameSingular,
type:
field.type === FieldMetadataType.DateTime
? 'DATE_TIME'
diff --git a/front/src/modules/ui/object/object-filter-dropdown/components/ObjectFilterDropdownEntitySelect.tsx b/front/src/modules/ui/object/object-filter-dropdown/components/ObjectFilterDropdownEntitySelect.tsx
index e01825539..c680c2175 100644
--- a/front/src/modules/ui/object/object-filter-dropdown/components/ObjectFilterDropdownEntitySelect.tsx
+++ b/front/src/modules/ui/object/object-filter-dropdown/components/ObjectFilterDropdownEntitySelect.tsx
@@ -14,8 +14,14 @@ export const ObjectFilterDropdownEntitySelect = () => {
objectFilterDropdownSelectedEntityId,
} = useFilter();
+ const objectMetadataNameSingular =
+ filterDefinitionUsedInDropdown?.relationObjectMetadataNameSingular ?? '';
+
+ const objectMetadataNamePlural =
+ filterDefinitionUsedInDropdown?.relationObjectMetadataNamePlural ?? '';
+
const { findManyQuery } = useObjectMetadataItem({
- objectNameSingular: 'company',
+ objectNameSingular: objectMetadataNameSingular,
});
const useFindManyQuery = (options: any) => useQuery(findManyQuery, options);
@@ -26,7 +32,8 @@ export const ObjectFilterDropdownEntitySelect = () => {
queryHook: useFindManyQuery,
filters: [
{
- fieldNames: searchQuery?.computeFilterFields?.('company') ?? [],
+ fieldNames:
+ searchQuery?.computeFilterFields?.(objectMetadataNameSingular) ?? [],
filter: objectFilterDropdownSearchInput,
},
],
@@ -34,8 +41,9 @@ export const ObjectFilterDropdownEntitySelect = () => {
selectedIds: objectFilterDropdownSelectedEntityId
? [objectFilterDropdownSelectedEntityId]
: [],
- mappingFunction: (record: any) => identifiersMapper?.(record, 'company'),
- objectNamePlural: 'companies',
+ mappingFunction: (record: any) =>
+ identifiersMapper?.(record, objectMetadataNameSingular),
+ objectNamePlural: objectMetadataNamePlural,
});
if (filterDefinitionUsedInDropdown?.type !== 'RELATION') {
diff --git a/front/src/modules/ui/object/object-filter-dropdown/types/FilterDefinition.ts b/front/src/modules/ui/object/object-filter-dropdown/types/FilterDefinition.ts
index d2dedea78..63b517d3e 100644
--- a/front/src/modules/ui/object/object-filter-dropdown/types/FilterDefinition.ts
+++ b/front/src/modules/ui/object/object-filter-dropdown/types/FilterDefinition.ts
@@ -7,7 +7,8 @@ export type FilterDefinition = {
label: string;
iconName: string;
type: FilterType;
- entitySelectComponent?: JSX.Element;
+ relationObjectMetadataNamePlural?: string;
+ relationObjectMetadataNameSingular?: string;
selectAllLabel?: string;
SelectAllIcon?: IconComponent;
};
diff --git a/front/src/modules/ui/object/object-sort-dropdown/components/ObjectSortDropdownButton.tsx b/front/src/modules/ui/object/object-sort-dropdown/components/ObjectSortDropdownButton.tsx
index 5d1987bd4..beebcaa39 100644
--- a/front/src/modules/ui/object/object-sort-dropdown/components/ObjectSortDropdownButton.tsx
+++ b/front/src/modules/ui/object/object-sort-dropdown/components/ObjectSortDropdownButton.tsx
@@ -100,8 +100,9 @@ export const ObjectSortDropdownButton = ({
- {availableSortDefinitions.map(
- (availableSortDefinition, index) => (
+ {[...availableSortDefinitions]
+ .sort((a, b) => a.label.localeCompare(b.label))
+ .map((availableSortDefinition, index) => (
- ),
- )}
+ ))}
>
)}
diff --git a/front/src/pages/tasks/tasks-filter-definitions.tsx b/front/src/pages/tasks/tasks-filter-definitions.tsx
index 27379f175..c399460dd 100644
--- a/front/src/pages/tasks/tasks-filter-definitions.tsx
+++ b/front/src/pages/tasks/tasks-filter-definitions.tsx
@@ -1,7 +1,6 @@
import { Activity } from '@/activities/types/Activity';
import { IconUserCircle } from '@/ui/display/icon';
import { FilterDefinitionByEntity } from '@/ui/object/object-filter-dropdown/types/FilterDefinitionByEntity';
-import { FilterDropdownUserSearchSelect } from '@/users/components/FilterDropdownUserSearchSelect';
export const tasksFilterDefinitions: FilterDefinitionByEntity[] = [
{
@@ -9,7 +8,8 @@ export const tasksFilterDefinitions: FilterDefinitionByEntity[] = [
label: 'Assignee',
iconName: 'IconUser',
type: 'RELATION',
- entitySelectComponent: ,
+ relationObjectMetadataNamePlural: 'workspaceMembers',
+ relationObjectMetadataNameSingular: 'workspaceMember',
selectAllLabel: 'All assignees',
SelectAllIcon: IconUserCircle,
},