Fix/opportunities board (#2610)

* WIP

* wip

* update pipelineStepId

* rename pipeline stage to pipeline step

* rename pipelineProgress to Opportunity

* fix UUID type not queried

* fix boardColumnTotal

* fix micros

* fixing filters, sorts and fields

* wip

* wip

* Fix opportunity board re-render

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: bosiraphael <raphael.bosi@gmail.com>
This commit is contained in:
Charles Bochet
2023-11-21 01:24:25 +01:00
committed by GitHub
parent a33d4c8b8d
commit 09533e286b
36 changed files with 364 additions and 277 deletions

View File

@ -22,9 +22,12 @@ export const RecordTableEffect = () => {
});
const {
mainIdentifierMapper,
basePathToShowPage,
mainIdentifierFieldMetadataId,
labelIdentifierFieldPaths,
imageIdentifierUrlField,
imageIdentifierUrlPrefix,
imageIdentifierFormat,
} = useObjectMainIdentifier(objectMetadataItem);
const { columnDefinitions, filterDefinitions, sortDefinitions } =
@ -40,13 +43,12 @@ export const RecordTableEffect = () => {
} = useView();
useEffect(() => {
if (
mainIdentifierMapper &&
basePathToShowPage &&
mainIdentifierFieldMetadataId
) {
if (basePathToShowPage && mainIdentifierFieldMetadataId) {
setObjectMetadataConfig?.({
mainIdentifierMapper,
labelIdentifierFieldPaths,
imageIdentifierUrlField,
imageIdentifierUrlPrefix,
imageIdentifierFormat,
basePathToShowPage,
mainIdentifierFieldMetadataId,
});
@ -55,8 +57,11 @@ export const RecordTableEffect = () => {
basePathToShowPage,
objectMetadataItem,
mainIdentifierFieldMetadataId,
mainIdentifierMapper,
setObjectMetadataConfig,
labelIdentifierFieldPaths,
imageIdentifierUrlField,
imageIdentifierUrlPrefix,
imageIdentifierFormat,
]);
useEffect(() => {

View File

@ -1,3 +1,4 @@
import { useCallback } from 'react';
import { useMutation } from '@apollo/client';
import { getOperationName } from '@apollo/client/utilities';
@ -20,20 +21,25 @@ export const useDeleteOneObjectRecord = <T>({
// TODO: type this with a minimal type at least with Record<string, any>
const [mutate] = useMutation(deleteOneMutation);
const deleteOneObject =
objectNameSingular && foundObjectMetadataItem
? async (idToDelete: string) => {
const deletedObject = await mutate({
variables: {
idToDelete,
},
refetchQueries: [getOperationName(findManyQuery) ?? ''],
});
return deletedObject.data[
`create${capitalize(objectNameSingular)}`
] as T;
}
: undefined;
const deleteOneObject = useCallback(
async (idToDelete: string) => {
if (objectNameSingular && foundObjectMetadataItem) {
const deletedObject = await mutate({
variables: {
idToDelete,
},
refetchQueries: [getOperationName(findManyQuery) ?? ''],
});
return deletedObject.data[
`create${capitalize(objectNameSingular)}`
] as T;
}
return null;
},
[foundObjectMetadataItem, mutate, objectNameSingular, findManyQuery],
);
return {
deleteOneObject,

View File

@ -16,5 +16,12 @@ export const filterAvailableTableColumns = (
return false;
}
if (
isFieldRelation(columnDefinition) &&
columnDefinition.metadata?.fieldName === 'pipelineStep'
) {
return false;
}
return true;
};