Implemented the following actions for the workflows: - Test Workflow - Discard Draft - Activate Draft - Activate Workflow Last Published Version - Deactivate Workflow - See Workflow Executions - See Workflow Active Version - See Workflow Versions History And the following actions for the workflow versions: - Use As Draft - See Workflow Versions History - See Workflow Executions Video example: https://github.com/user-attachments/assets/016956a6-6f2e-4de5-9605-d6e14526cbb3 A few of these actions are links to the relations of the workflow object (link to a filtered table). To generalize this behavior, I will create an hook named `useSeeRelationsActionSingleRecordAction` to automatically generate links to a showPage if the relation is a Many To One or to a filtered table if the relation is a One to Many for all the record types. I will also create actions which will allow to create a relation. --------- Co-authored-by: Charles Bochet <charles@twenty.com>
44 lines
1.1 KiB
TypeScript
44 lines
1.1 KiB
TypeScript
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
|
|
import { useFindManyRecords } from '@/object-record/hooks/useFindManyRecords';
|
|
import { Workflow, WorkflowVersion } from '@/workflow/types/Workflow';
|
|
|
|
export const useActiveWorkflowVersion = (workflowId: string) => {
|
|
const { records: workflowVersions } = useFindManyRecords<
|
|
WorkflowVersion & {
|
|
workflow: Omit<Workflow, 'versions'> & {
|
|
versions: Array<{ __typename: string }>;
|
|
};
|
|
}
|
|
>({
|
|
objectNameSingular: CoreObjectNameSingular.WorkflowVersion,
|
|
filter: {
|
|
workflowId: {
|
|
eq: workflowId,
|
|
},
|
|
status: {
|
|
eq: 'ACTIVE',
|
|
},
|
|
},
|
|
recordGqlFields: {
|
|
id: true,
|
|
name: true,
|
|
createdAt: true,
|
|
updatedAt: true,
|
|
workflowId: true,
|
|
trigger: true,
|
|
steps: true,
|
|
status: true,
|
|
workflow: {
|
|
id: true,
|
|
name: true,
|
|
statuses: true,
|
|
versions: {
|
|
totalCount: true,
|
|
},
|
|
},
|
|
},
|
|
});
|
|
|
|
return workflowVersions?.[0];
|
|
};
|