* Fixed BoardColumnMenu * Fixed naming * Optimized board loading * Added GenericEditableField * Introduce GenericEditableField for BoardCards * remove logs * delete unused files * fix stories --------- Co-authored-by: corentin <corentin@twenty.com>
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { defaultOrderBy } from '@/people/queries';
|
|
import {
|
|
ViewFieldDefinition,
|
|
ViewFieldMetadata,
|
|
} from '@/ui/editable-field/types/ViewField';
|
|
import { FilterDefinition } from '@/ui/filter-n-sort/types/FilterDefinition';
|
|
import { useSetEntityTableData } from '@/ui/table/hooks/useSetEntityTableData';
|
|
|
|
import { useLoadView } from '../hooks/useLoadView';
|
|
|
|
export function GenericEntityTableData({
|
|
objectName,
|
|
useGetRequest,
|
|
getRequestResultKey,
|
|
orderBy = defaultOrderBy,
|
|
whereFilters,
|
|
viewFieldDefinitions,
|
|
filterDefinitionArray,
|
|
}: {
|
|
objectName: 'company' | 'person';
|
|
useGetRequest: any;
|
|
getRequestResultKey: string;
|
|
orderBy?: any;
|
|
whereFilters?: any;
|
|
viewFieldDefinitions: ViewFieldDefinition<ViewFieldMetadata>[];
|
|
filterDefinitionArray: FilterDefinition[];
|
|
}) {
|
|
const setEntityTableData = useSetEntityTableData();
|
|
|
|
useLoadView({ objectName, viewFieldDefinitions });
|
|
|
|
useGetRequest({
|
|
variables: { orderBy, where: whereFilters },
|
|
onCompleted: (data: any) => {
|
|
const entities = data[getRequestResultKey] ?? [];
|
|
setEntityTableData(entities, filterDefinitionArray);
|
|
},
|
|
});
|
|
|
|
return <></>;
|
|
}
|